--- /dev/null
+Interface:
+- type (string like caps) channels/x-mpegts-pat
+- GstStructure to describe the what the list is, name, where from etc. (how many entries you can select, if multiple tried, first one picked)
+- method to list entries (channels)
+- method to get current entries
+- method to set list of entries
+- each entry contains an id (32 bit int say), GstStructure (with additional stuff)
+
+signals to say when entry list changes
+ to say when current entry changes
+
+So for a transport stream, this interface would be exported and it could contain a list of interfaces...eg it would export PAT, and PAT list would contain interfaces in the GstStructure for the PMT.
+
+dvbsrc -> list of frequencies
+flutsdemux -> list of programs (PAT) and list of PMT streams per program
+
+get list of frequencies, select frequency
+get list of programs, select programs
+get list of streams, select streams
+
+only give program details in PAT list, when we have seen the PMT for that program.
+
+possibly another interface to select multiple list interfaces from an element. (interface selector interface)
+
+--
+other option is to tag