Hi all.

Firstly, if this is in the wrong place then I will freely move it and apologise in advance.

Currently I'm working a project that involves implementing an LCD display (an ili_ derivative, 2.8 inch via SPI bus) and using the Teensy 3.5. It wil be connected to a CAN bus where it will receive most of it's data, the rest from a custom bus in the form of Serial over a LIN-like line. It will also be able to use an SD card which I'm hoping I can make a complete configurable display with so that a single file or set of files will define menus, graphics and positioning, how to react to events and so on. I was looking into using XML originally as it seemed like a logical first step and would allow me to do the following:
Code:
<menu>
   <name>Main Menu</name>
   <contents>list</contents>
   <list>
      <item_1>
        <name>Settings</name>
        <onClick>
          <goto>Settings_Menu</goto>
        </onClick>
   </list>
</menu>
Etc. However I decided that for ease of coding and library support that JSON would be better in this instance and began researching with the ArduinoJSON library although this requires in some extent of knowing how big the file will be to entirely load it into memory and process which will be problematic if I cannot predict what file size will be used. I'm not sure if that could be entirely alleviated by reading the file size either incase it fills memory entirely up.

So really, what my question would be is to get such a menu system, would this be a good route or would it be better to instead use another script/custom design? Or is there some project that exists open source which does this?

Thank you