there's a new lib i'm building that makes this process super simple. It's based on an old IE technology called data binding. It should allow you to create such a feature without writing a single line of JS.
I'm still working on it, but it's an active project and is already usable in modern browsers. Over the next week i will be adding unit tests and legacy browser compatibility. These would not change the existing syntax, which is frozen.
at any rate, my goal is to enable what you described in post #1 with the following code:
<object classid="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83" id=tdcWeath >
<param name=DataURL value="http://api.openweathermap.org/data/2.1/forecast/city/UKXX0102?units=metric&callback=demo" />
<param name=DataPath value=".list" />
<param name=Limit value="7" />
<li style=display:inline-block;width:300px;padding:1em; >
you can read about the various options and kick the tires on a dozen or so demos at danml.com/bind/
EDIT: added limit
param support, removed cautionary note about it.
BROWSER STATS [% share]
(2013/10/31) IE7:0.5, IE8:8.6, IE9:5.3, IE10:12.3, FF:17.7, CH:41.8, SF:8.1, MOBILE:20.4