Two examples below-- a series episode (no genre tags displayed) and a movie (genre tags displayed). The source XML includes some extra fields for other applications. Removing them does not seem to make a difference. For the categories, I include both the original Pluto versions and the mapped versions. I also include "On-Demand" to indicate VOD and "Special" is an alias for On-Demand since collections can only filter on your predefined categories. (Would be nice not to restrict that.)
Series Example (genre tags missing in guide but work for collection filtering):
<programme channel="antiques-roadshow-uk" start="20220207154500" stop="20220207164500" slug="antiques-roadshow-20100919-s33e01-beverley-minster">
<length unit="seconds">3600</length>
<title lang="en">Antiques Roadshow</title>
<sub-title lang="en">Beverley Minster</sub-title>
<desc lang="en">The team visits Beverley Minster, where items include a medieval ring dug up on a farm.</desc>
<language>EN</language>
<date>20100919</date>
<category lang="en">Series</category>
<category lang="en">Entertaining</category>
<category lang="en">News</category>
<category lang="en">News&Information</category>
<episode-num system="onscreen">S33E01</episode-num>
<episode-num system="pluto">5db765230c987cb057aca5f1</episode-num>
<episode-num system="original-air-date">20100919</episode-num>
<rating>
<value>TV-PG</value>
</rating>
<icon src="http://images.pluto.tv/series/5ce59b93bbc276025ed0321c/tile.jpg?fill=blur&fit=fill&fm=jpg&h=900&q=75&w=900"/>
<series-id system="pluto">5ce59b93bbc276025ed0321c</series-id>
<stream>http://service-stitcher.clusters.pluto.tv/stitch/hls/channel/5ce44810b421747ae467b7cd/master.m3u8?advertisingId=&appName=web&appVersion=unknown&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId=5298c20917e32e75&deviceLat=45.0648&deviceLon=-92.8466&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&marketingRegion=US&sid=62013e7cf37ab1075298c20917e32e75f029f336cb2528bb&userId=</stream>
</programme>
<programme start="20220207154500 +0000" stop="20220207164500 +0000" channel="9012">
<title>Antiques Roadshow</title>
<sub-title>Beverley Minster</sub-title>
<desc>The team visits Beverley Minster, where items include a medieval ring dug up on a farm.</desc>
<category>Series</category>
<category>Entertaining</category>
<category>News</category>
<category>News&Information</category>
<icon src="http://images.pluto.tv/series/5ce59b93bbc276025ed0321c/tile.jpg?fill=blur&fit=fill&fm=jpg&h=900&q=75&w=900"/>
<series-id system="xmltv:perl">pluto/5ce59b93bbc276025ed0321c</series-id>
<date>20100919</date>
<previously-shown/>
<episode-num system="xmltv:perl">pluto/5ce59b93bbc276025ed0321c/S33E1</episode-num>
<episode-num system="onscreen">S33E1</episode-num>
<episode-num system="xmltv_ns">32.0.</episode-num>
</programme>
Movie example (genre tags including Pluto's and On-Demand both show in Web Guide):
<programme channel="70s-cinema" start="20220207153000" stop="20220207173000" slug="movie(1978)the-duellists">
<length unit="seconds">7200</length>
<title lang="en">The Duellists</title>
<desc lang="en">Keith Carradine and Harvey Keitel star in this dramatic film about two officers in Napoleon’s army who violently confront each other in a series of duels.</desc>
<language>EN</language>
<date>19780101</date>
<category lang="en">Movie</category>
<category lang="en">Classic Dramas</category>
<category lang="en">Classics</category>
<category lang="en">Drama</category>
<category lang="en">On-Demand</category>
<category lang="en">Special</category>
<rating>
<value>R</value>
</rating>
<icon src="http://images.pluto.tv/episodes/5e9eefa4dceed3001af44b80/poster.jpg?fill=blur&fit=fill&fm=jpg&h=1000&q=75&w=694"/>
<stream>http://service-stitcher.clusters.pluto.tv/stitch/hls/channel/5f4d878d3d19b30007d2e782/master.m3u8?advertisingId=&appName=web&appVersion=unknown&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId=1229328e46c57463&deviceLat=45.0648&deviceLon=-92.8466&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&marketingRegion=US&sid=62013af804c9570d1229328e46c57463c5df87a762575143&userId=</stream>
<vod>http://service-stitcher.clusters.pluto.tv/stitch/hls/episode/5e9eefa4dceed3001af44b80/master.m3u8?advertisingId=&appName=web&appVersion=unknown&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId=1229328e46c57463&deviceLat=45.0648&deviceLon=-92.8466&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&marketingRegion=US&sid=04c9570d1229328e46c57463c5df87a762575143&userId=</vod>
</programme>
<programme start="20220207153000 +0000" stop="20220207173000 +0000" channel="9000">
<title>The Duellists (1978)</title>
<desc>Keith Carradine and Harvey Keitel star in this dramatic film about two officers in Napoleon’s army who violently confront each other in a series of duels.</desc>
<category>Movie</category>
<category>Classic Dramas</category>
<category>Classics</category>
<category>Drama</category>
<category>On-Demand</category>
<category>Special</category>
<icon src="http://images.pluto.tv/episodes/5e9eefa4dceed3001af44b80/poster.jpg?fill=blur&fit=fill&fm=jpg&h=1000&q=75&w=694"/>
<date>19780101</date>
<previously-shown/>
<episode-num system="xmltv:perl">The Duellists/4dc904f6a2ba00aabdb1606a7fcab6c0f9f232f7003e0bc8b10bc83ca217916e</episode-num>
</programme>