I’ve written a couple of programs in different languages that produce and parse tvshow.nfo and TV episode .nfo files. The only things that have tripped me up are that `<actor>` and `<genre>` are repeated tags instead of being wrapped in containing tags.
Lots of languages have great tools to automatically serialise/deserialise XML to dicts/hashmaps, but they expect array elements to be wrapped in containing elements. To make it easier to integrate with them, it’d be great if these formats could also support an `<actors>` tag to contain multiple `<actor>` entries, and the same for genre. So instead of:
<tvshow>
...
<actor>
<name>Hugh Laurie</name>
<role>Dr. Gregory House</role>
<thumb>http://thetvdb.com/banners/actors/23839.jpg</thumb>
</actor>
<actor>
<name>Robert Sean Leonard</name>
<role>Dr. James Wilson</role>
<thumb>http://thetvdb.com/banners/actors/23842.jpg</thumb>
</actor>
...
<genre>Comedy</genre>
<genre>Drama</genre>
</tvshow>
Kodi would support:
<tvshow>
...
<actors>
<actor>
<name>Hugh Laurie</name>
<role>Dr. Gregory House</role>
<thumb>http://thetvdb.com/banners/actors/23839.jpg</thumb>
</actor>
<actor>
<name>Robert Sean Leonard</name>
<role>Dr. James Wilson</role>
<thumb>http://thetvdb.com/banners/actors/23842.jpg</thumb>
</actor>
</actors>
...
<genres>
<genre>Comedy</genre>
<genre>Drama</genre>
</genres>
</tvshow>
If this was added as an extra supported format, there’d be no backward-incompatible changes, but it’d make life easier for people using the automatic serialisation/deserialisation libraries that expect to wrap an array in a containing tag.