Help parsing XML data

Hello community,

due to a bug in my epg app i started some research in web and randomly found that: guide, xml-data

Loading that data and parsing it with web-component works one tine. than it leads to a low memory error.

I found this: link 1 and that link 2. I do not realy understand the logic how can i access the deep structure in database which is created by XMLTextDecodeAsDictionary independently of the problem with the memory.

Now I am looking for a possibility to parse the responseContent from web.gotText manually. But I find no way how to do it. Is there any possibility to walk through the content searching a tag, remember the position and then continue searching from that position?

Did anybody was triing to build an epg app with mit app inventor or is it too much because of the amount of xml content? Are there other possibilities to realize? The purpose is not to built an IPTV app (I found a project, tried it out and it works) what I want is a channel list and the television program for a time range.

Thanks in advance for ideas, opinions and / or help

The channel list precedes the program list:

<channel id="Scooore.de">
    <display-name>DE - Scooore</display-name>
    <icon src="https://iptv-epg.org/logos/Germany/Scooore.de.png"/>
  </channel>
  <channel id="DasErste.de">
    <display-name>DE - Das Erste</display-name>
    <icon src="https://iptv-epg.org/logos/Germany/DasErste.de.png"/>
  </channel>
  <channel id="ZDF.de">
    <display-name>DE - ZDF</display-name>
    <icon src="https://iptv-epg.org/logos/Germany/ZDF.de.png"/>
  </channel>

The program info is long and shallow:

 <programme start="20260214110000 +0000" stop="20260214142700 +0000" channel="DAZN8Live.de">
    <title lang="en">Next Match: Hoffenheim vs. Freiburg on 2026-02-14 at 09:27AM EST</title>
    <desc lang="en">Next Match: Hoffenheim vs. Freiburg on 2026-02-14 at 09:27AM EST</desc>
  </programme>
  <programme stop="20260214164700 +0000" start="20260214142700 +0000" channel="DAZN8Live.de">
    <title lang="en">Hoffenheim vs. Freiburg  ᴸᶦᵛᵉ</title>
    <desc lang="en">Hoffenheim vs. Freiburg.</desc>
    <live/>
  </programme>
  <programme start="20260214164700 +0000" stop="20260214172700 +0000" channel="DAZN8Live.de">
    <title lang="en">Next Match: Xhoxhaj vs. Seifkhani on 2026-02-14 at 12:27PM EST</title>
    <desc lang="en">Next Match: Xhoxhaj vs. Seifkhani on 2026-02-14 at 12:27PM EST</desc>
  <

This looks shreddable.

Here is a sample app or two:

https://community.appinventor.mit.edu/t/a-whole-lotta-building-going-on/15070/12?u=abg

The shred procedure at the heart of these two apps works by splitting a huge text at given prefix and suffix boundaries, to make long parallel lists that can be used to filter and summarize.

1 Like

hi @ABG, this looks good. sample 2 is a guide which i will study in detail. the first link i can not access... unfortunately

I guess that the first link would be an example from you. i learn best with small conrete examples :wink: