Naive XML questions

Bernard Devlin bdrunrev at
Sun Oct 25 14:51:07 EDT 2020

In his reply to you I think Alex is suggesting you use the handlers that
come with the  Datagrid.  These can convert xml to a LC array.  You might
find it easier just to deal with a familair data structure rather than
learn XML.

I found them here:

But the handlers are also to be found inside the datagrid library in the
IDE (I suspect they are more up to date).

On Sun, Oct 25, 2020 at 5:22 PM Graham Samuel via use-livecode <
use-livecode at> wrote:

> I feel stupid, but even with Sarah Reichelt’s help, there are very very
> simple things I can’t do with the LC XML functions. My current problem is
> this:
> I have a series of XML files which are in fact .gpx files - a collection
> of GPS coordinates representing a route on the Earth’s surface. There are
> thousands of files around which I can use as test data, so I don’t have to
> roll my own. Taking just one of these examples, I can do the following in LC
> 1. Get the user to find the file and download it
> 2. Check it’s a .gpx file
> 3. Turn it into an LC XML data structure with an integer ID
> 4. Find out how many child nodes there are.
> Then it all goes wrong, because I don’t seem to be able to address the
> individual nodes. This is obviously needed for further progress, in
> functions like revXMLFirstChild  and revXMLNodeContents.
> I just don’t know what format to use. Sarah’s tutorial doesn’t help
> because her data structure is too simplified.
> If you’re still with me, this is what the beginning of a typical file
> looks like:
> > <?xml version="1.0" encoding="UTF-8"?>
> > <gpx xmlns="" creator="Digital Crow"
> version="1.0" xmlns:xsi=""
> xsi:schemaLocation="
> >  <metadata />
> >  <trk>
> >    <trkseg>
> > <trkpt lat="43.319729" lon="2.128369">
> > <ele>169.623637</ele> </trkpt>
> > <trkpt lat="43.319731" lon="2.128375">
> > <ele>169.744722</ele> </trkpt>
> > <trkpt lat="43.319731" lon="2.128375">
> > <ele>169.744722</ele> </trkpt>
> > <trkpt lat="43.319731" lon="2.128388">
> > <ele>169.266626</ele> </trkpt>
> >
> etc - there may sometimes be thousands of these “trkpt” elements.
> So, suppose I want to get the first instance of the “lon” attribute into a
> local variable. How do I address the first <trk> node etc in order to do
> it? I have attempted various common-sense methods, but none work.
> This must be child’s play to a lot of people, just not me.
> Hoping for some guidance.
> Graham
> _______________________________________________
> use-livecode mailing list
> use-livecode at
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:

More information about the use-livecode mailing list