<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.xmltv.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Benb</id>
		<title>XMLTV - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.xmltv.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Benb"/>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php/Special:Contributions/Benb"/>
		<updated>2026-09-22T03:16:27Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.26.4</generator>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1599</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1599"/>
				<updated>2009-08-18T11:25:31Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */ Examples&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (http://supplement.xmltv.org).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author (assuming he's unbiased), XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it. If the grabber source or station networks happen to provide presets, but they are not ideal in the way users would want it, the commercial interests are to be ignored and manually managed preset lists should be used.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
Examples: &amp;quot;National Geographic&amp;quot;, &amp;quot;BBC 1&amp;quot; (same as short name), &amp;quot;Sky Entertainment 1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&amp;lt;br&amp;gt;&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
Examples: &amp;quot;BBC 1&amp;quot;, &amp;quot;NatGeo&amp;quot;, &amp;quot;Sky Entert&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1598</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1598"/>
				<updated>2009-08-18T11:16:59Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (http://supplement.xmltv.org).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author (assuming he's unbiased), XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it. If the grabber source or station networks happen to provide presets, but they are not ideal in the way users would want it, the commercial interests are to be ignored and manually managed preset lists should be used.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1597</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1597"/>
				<updated>2009-08-18T11:15:06Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (&amp;quot;supplement&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author (assuming he's unbiased), XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it. If the grabber source or station networks happen to provide presets, but they are not ideal in the way users would want it, the commercial interests are to be ignored and manually managed preset lists should be used.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1596</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1596"/>
				<updated>2009-08-18T11:13:53Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (&amp;quot;supplement&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author (assuming he's unbiased), XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it. If the grabber source or station networks happen to provide presets, but they are not ideal in the way users would want it, the commercial interests are to be ignored.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1595</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1595"/>
				<updated>2009-08-18T11:11:49Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (&amp;quot;supplement&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author (assuming he's unbiased), XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1594</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1594"/>
				<updated>2009-08-18T11:10:51Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (&amp;quot;supplement&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
The presets and long/short names are a matter of judgment, and to be decided on by the grabber author, XMLTV project or similar. The only consideration should be how users (TV watchers) would like to see/use it.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1593</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1593"/>
				<updated>2009-08-18T11:08:44Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: Source&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Purpose =&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Source =&lt;br /&gt;
&lt;br /&gt;
This file shall be (if so decided by XMLTV project) provided by the grabber, when called with a commandline flag &amp;lt;code&amp;gt;--list-channels&amp;lt;/code&amp;gt; (or similar). The grabber may compile the file from information from the grabber source, or via a static list, or (usually) a mix of both.&lt;br /&gt;
&lt;br /&gt;
The file may also be retrieved from other sources, e.g. web service which just lists satellite channels, or from a static location provided by the vendor of the TV system, or from the XMLTV web server (&amp;quot;supplement&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1592</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1592"/>
				<updated>2009-08-18T10:55:30Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog EU */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1591</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1591"/>
				<updated>2009-08-18T10:54:53Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog EU */ cni in hex&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1. In hex, with preceding &amp;quot;0x&amp;quot;.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1590</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1590"/>
				<updated>2009-08-18T10:51:52Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way to sort channels. You can assign a common string to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;kids&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1589</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1589"/>
				<updated>2009-08-18T10:44:08Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels should have no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1588</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1588"/>
				<updated>2009-08-18T10:43:23Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'. The &amp;quot;spam&amp;quot;-channels get no preset.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1587</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1587"/>
				<updated>2009-08-18T06:46:42Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him. This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1586</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1586"/>
				<updated>2009-08-17T23:37:06Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him.&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://example.com /zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1585</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1585"/>
				<updated>2009-08-17T23:35:31Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him.&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1584</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1584"/>
				<updated>2009-08-17T23:33:05Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him.&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what you see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath and &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1583</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1583"/>
				<updated>2009-08-17T23:27:34Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: author&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal by [http://www.bucksch.org Ben Bucksch] and used by a TV system created by him.&lt;br /&gt;
&lt;br /&gt;
During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath and &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1582</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1582"/>
				<updated>2009-08-17T23:21:59Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath and &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1581</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1581"/>
				<updated>2009-08-17T23:21:34Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */ Each element only once.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
Unless mentioned otherwise, each element underneath and &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear only once. Applications should ignore additional elements of the same tag name and use the first. Of course, &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; may appear several times.&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1580</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1580"/>
				<updated>2009-08-17T23:19:08Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* DVB Channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location, making identification easy and our list short.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1579</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1579"/>
				<updated>2009-08-17T23:18:25Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* DVB Channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). So, ideally, there should only be one DVB service name for the same station, no matter which DVB transport medium or location.&lt;br /&gt;
&lt;br /&gt;
However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1578</id>
		<title>LineupProposal</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1578"/>
				<updated>2009-08-17T23:14:48Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog TV */  Fix header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Lineup Proposal ==&lt;br /&gt;
&lt;br /&gt;
Proposal by [[User:MattiasHolmlund|Mattias Holmlund]].&lt;br /&gt;
&lt;br /&gt;
(There is an alternate proposal on [[LineupProposal2]]).&lt;br /&gt;
&lt;br /&gt;
This page describes my proposal for a new capability for grabbers that I call &amp;quot;lineups&amp;quot;. It has not yet been decided on and no grabber implements it.&lt;br /&gt;
&lt;br /&gt;
The problem as I see it is that we need a way for applications such as MythTV to connect the channels that it can find on a videosource (a TV-card for example) to the xmltvids that it gets from the xmltv grabber. Each channel contained in an xmltv-file can be a part of several different lineups. This means that we need to be able to supply several different mappings for one channel. The mapping for a channel will also differ depending on which lineup the user has selected. Therefore, I think we need to have the lineup information separate from the channel-section of the xmltv-file. Note that the lineup information can in some cases contain mappings for channels that the grabber does not have schedule data for.&lt;br /&gt;
&lt;br /&gt;
Furthermore, I don't think we need to include the lineup information every time the grabber downloads schedules data. The PVR application will typically need lineup-information after a channel scan or when it detects that something has changed in the lineup via other means (changed service-name in an mpeg-stream etc.) The lineup-information will for at least some grabbers not come from the same source as the data. I would guess that at least some of the grabbers would fetch the lineup-data from community-run sites, and I think we can save a lot of bandwidth for these sites if we only download lineup-data when the PVR application really needs it.&lt;br /&gt;
&lt;br /&gt;
The mapping from tuning data to xmltvid is different for different providers. However, it is also different depending on the type of videosource. For analog TV, the mapping can be expressed as a frequency to xmltvid mapping. For DVB-T, several channels can share a single frequency (multiplex) and it is pretty easy to scan all frequencies, so there we can use the provider-name and service-name inside the MPEG-stream and map it to an xmltvid instead. For IP-TV, we can map a url for the stream to the xmltvid. For IP Multicast-TV we map a multicast IP address and port-number to the xmltvid.&lt;br /&gt;
&lt;br /&gt;
These mappings can be described in lineups. A lineup contains a set of channels that a customer can order from his provider. I would propose that lineups are not included in the xmltv-format and that they are instead described in separate xml-files. We can write the DTD as a part of the xmltv-project, but it should be separate from the current xmltv dtd.&lt;br /&gt;
&lt;br /&gt;
A sample lineup could look like this:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that there is a display-name for each channel even though this display-name can be found in the xmltv-file. The reason for this is that we might not have data for all channels, and then the user will at least have a display-name.&lt;br /&gt;
&lt;br /&gt;
The grabber shall support two new command-line options: --lineup and --list-lineups. They are used as follows:&lt;br /&gt;
&lt;br /&gt;
First, the application lets the user configure the grabber just as before. During the configuration, the grabber asks the user questions so it can learn which lineups the user has access to. How this is done is up to the grabber, but typically the user will be able to choose between a set of lineups somehow. The user shall be able to select several lineups at once. If a user chooses one or more lineups, it will probably not make sense to ask the user which channels he wants to download data for, since this is given by which lineups he has chosen.&lt;br /&gt;
&lt;br /&gt;
When the configuration is done, the application can ask the user which lineups the user has chosen with the --list-lineups parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --list-lineups&lt;br /&gt;
    stockholm.fri.boxer.se|DVB-T|Boxer Fri Stockholm&lt;br /&gt;
    total.canalplus.se|DVB-S|Canal+ Total&lt;br /&gt;
&lt;br /&gt;
The application can then ask for detailed information about each lineup with the --lineup parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --lineup stockholm.fri.boxer.se&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lineup types ==&lt;br /&gt;
&lt;br /&gt;
We need to define the lineup-format for all available types of TV-sources and preferably radio as well.&lt;br /&gt;
&lt;br /&gt;
=== List ===&lt;br /&gt;
&lt;br /&gt;
The simplest type of lineup is the &amp;quot;list&amp;quot;. This only contains a list of channels with a display-name and an optional preferred-preset. It is useful in cases when we don't have any other information available. It cannot be used to map channels to xmltvids, but it can be used to select a set of channels that you want to receive data for.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;list&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The preferred-preset field tells the application which &amp;quot;button on the remote&amp;quot; this channel should preferably be connected to. This field is optional.&lt;br /&gt;
&lt;br /&gt;
All other lineup-types are extensions of the list-type.&lt;br /&gt;
&lt;br /&gt;
=== DVB-T ===&lt;br /&gt;
&lt;br /&gt;
For DVB-T, it is fairly easy for an application to scan all available frequencies and find all channels. Therefore, we don't need to include the frequencies in the lineup. Instead, we only include enough information to allow the application to uniquely identify each channel. Each channel in a DVB-T stream is identified by a provider-name and a service-name, so we can use these.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2&amp;lt;/service-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
One advantage of not including the frequencies is that the number of different lineups decreases. This is because several different regions can use the exact same lineup even though they use different frequencies. In Sweden for example, we have roughly 50 different transmitters operating on different frequencies, but the country is only divided into five different regions for lineups.&lt;br /&gt;
&lt;br /&gt;
I think that DVB-S and DVB-C can use the same format and possibly also ATSC. So we might want to call the lineup-type DTV instead.&lt;br /&gt;
&lt;br /&gt;
=== Analog TV ===&lt;br /&gt;
&lt;br /&gt;
For analog TV we have to use the frequency to identify the channel since there is no other channel identifier available.&lt;br /&gt;
&lt;br /&gt;
Should we use frequenzies (in Hz) or frequency numbers? Do the channel numbers mean the same frequency in all countries? How about Analog Cable?&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;Analog&amp;quot; id=&amp;quot;chateau.latresne.33.fr&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;33 - Latresne - Chateau d'Eau&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france2.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;31&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france3.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 3&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;3&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;34&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IP TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with a url such as rtsp://...&lt;br /&gt;
&lt;br /&gt;
=== IP Multicast TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with an IP multicast address and a port-number.&lt;br /&gt;
&lt;br /&gt;
=== STB === &lt;br /&gt;
&lt;br /&gt;
In some countries, it is common with computers that get their video signal from an STB (Set-Top Box) and to change the channel, you have to tell the STB to change to a different preset.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;STB&amp;quot; id=&amp;quot;stb.stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
     &amp;lt;preset&amp;gt;1&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the difference between preferred-preset and preset here. preset is the number that you have to tune the STB to to receive the channel. preferred-preset is the channel number that the user will likely prefer to have the channel mapped to on the remote to his computer. These two fields will likely contain the same value, but they are separate.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1577</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1577"/>
				<updated>2009-08-17T23:13:33Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* IPTV channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtsp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1576</id>
		<title>LineupProposal</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1576"/>
				<updated>2009-08-17T23:13:10Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* STB */ Fix header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Lineup Proposal ==&lt;br /&gt;
&lt;br /&gt;
Proposal by [[User:MattiasHolmlund|Mattias Holmlund]].&lt;br /&gt;
&lt;br /&gt;
(There is an alternate proposal on [[LineupProposal2]]).&lt;br /&gt;
&lt;br /&gt;
This page describes my proposal for a new capability for grabbers that I call &amp;quot;lineups&amp;quot;. It has not yet been decided on and no grabber implements it.&lt;br /&gt;
&lt;br /&gt;
The problem as I see it is that we need a way for applications such as MythTV to connect the channels that it can find on a videosource (a TV-card for example) to the xmltvids that it gets from the xmltv grabber. Each channel contained in an xmltv-file can be a part of several different lineups. This means that we need to be able to supply several different mappings for one channel. The mapping for a channel will also differ depending on which lineup the user has selected. Therefore, I think we need to have the lineup information separate from the channel-section of the xmltv-file. Note that the lineup information can in some cases contain mappings for channels that the grabber does not have schedule data for.&lt;br /&gt;
&lt;br /&gt;
Furthermore, I don't think we need to include the lineup information every time the grabber downloads schedules data. The PVR application will typically need lineup-information after a channel scan or when it detects that something has changed in the lineup via other means (changed service-name in an mpeg-stream etc.) The lineup-information will for at least some grabbers not come from the same source as the data. I would guess that at least some of the grabbers would fetch the lineup-data from community-run sites, and I think we can save a lot of bandwidth for these sites if we only download lineup-data when the PVR application really needs it.&lt;br /&gt;
&lt;br /&gt;
The mapping from tuning data to xmltvid is different for different providers. However, it is also different depending on the type of videosource. For analog TV, the mapping can be expressed as a frequency to xmltvid mapping. For DVB-T, several channels can share a single frequency (multiplex) and it is pretty easy to scan all frequencies, so there we can use the provider-name and service-name inside the MPEG-stream and map it to an xmltvid instead. For IP-TV, we can map a url for the stream to the xmltvid. For IP Multicast-TV we map a multicast IP address and port-number to the xmltvid.&lt;br /&gt;
&lt;br /&gt;
These mappings can be described in lineups. A lineup contains a set of channels that a customer can order from his provider. I would propose that lineups are not included in the xmltv-format and that they are instead described in separate xml-files. We can write the DTD as a part of the xmltv-project, but it should be separate from the current xmltv dtd.&lt;br /&gt;
&lt;br /&gt;
A sample lineup could look like this:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that there is a display-name for each channel even though this display-name can be found in the xmltv-file. The reason for this is that we might not have data for all channels, and then the user will at least have a display-name.&lt;br /&gt;
&lt;br /&gt;
The grabber shall support two new command-line options: --lineup and --list-lineups. They are used as follows:&lt;br /&gt;
&lt;br /&gt;
First, the application lets the user configure the grabber just as before. During the configuration, the grabber asks the user questions so it can learn which lineups the user has access to. How this is done is up to the grabber, but typically the user will be able to choose between a set of lineups somehow. The user shall be able to select several lineups at once. If a user chooses one or more lineups, it will probably not make sense to ask the user which channels he wants to download data for, since this is given by which lineups he has chosen.&lt;br /&gt;
&lt;br /&gt;
When the configuration is done, the application can ask the user which lineups the user has chosen with the --list-lineups parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --list-lineups&lt;br /&gt;
    stockholm.fri.boxer.se|DVB-T|Boxer Fri Stockholm&lt;br /&gt;
    total.canalplus.se|DVB-S|Canal+ Total&lt;br /&gt;
&lt;br /&gt;
The application can then ask for detailed information about each lineup with the --lineup parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --lineup stockholm.fri.boxer.se&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lineup types ==&lt;br /&gt;
&lt;br /&gt;
We need to define the lineup-format for all available types of TV-sources and preferably radio as well.&lt;br /&gt;
&lt;br /&gt;
=== List ===&lt;br /&gt;
&lt;br /&gt;
The simplest type of lineup is the &amp;quot;list&amp;quot;. This only contains a list of channels with a display-name and an optional preferred-preset. It is useful in cases when we don't have any other information available. It cannot be used to map channels to xmltvids, but it can be used to select a set of channels that you want to receive data for.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;list&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The preferred-preset field tells the application which &amp;quot;button on the remote&amp;quot; this channel should preferably be connected to. This field is optional.&lt;br /&gt;
&lt;br /&gt;
All other lineup-types are extensions of the list-type.&lt;br /&gt;
&lt;br /&gt;
=== DVB-T ===&lt;br /&gt;
&lt;br /&gt;
For DVB-T, it is fairly easy for an application to scan all available frequencies and find all channels. Therefore, we don't need to include the frequencies in the lineup. Instead, we only include enough information to allow the application to uniquely identify each channel. Each channel in a DVB-T stream is identified by a provider-name and a service-name, so we can use these.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2&amp;lt;/service-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
One advantage of not including the frequencies is that the number of different lineups decreases. This is because several different regions can use the exact same lineup even though they use different frequencies. In Sweden for example, we have roughly 50 different transmitters operating on different frequencies, but the country is only divided into five different regions for lineups.&lt;br /&gt;
&lt;br /&gt;
I think that DVB-S and DVB-C can use the same format and possibly also ATSC. So we might want to call the lineup-type DTV instead.&lt;br /&gt;
Analog TV&lt;br /&gt;
&lt;br /&gt;
For analog TV we have to use the frequency to identify the channel since there is no other channel identifier available.&lt;br /&gt;
&lt;br /&gt;
Should we use frequenzies (in Hz) or frequency numbers? Do the channel numbers mean the same frequency in all countries? How about Analog Cable?&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;Analog&amp;quot; id=&amp;quot;chateau.latresne.33.fr&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;33 - Latresne - Chateau d'Eau&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france2.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;31&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france3.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 3&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;3&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;34&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IP TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with a url such as rtsp://...&lt;br /&gt;
&lt;br /&gt;
=== IP Multicast TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with an IP multicast address and a port-number.&lt;br /&gt;
&lt;br /&gt;
=== STB === &lt;br /&gt;
&lt;br /&gt;
In some countries, it is common with computers that get their video signal from an STB (Set-Top Box) and to change the channel, you have to tell the STB to change to a different preset.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;STB&amp;quot; id=&amp;quot;stb.stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
     &amp;lt;preset&amp;gt;1&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the difference between preferred-preset and preset here. preset is the number that you have to tune the STB to to receive the channel. preferred-preset is the channel number that the user will likely prefer to have the channel mapped to on the remote to his computer. These two fields will likely contain the same value, but they are separate.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1575</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1575"/>
				<updated>2009-08-17T23:11:44Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: Link other proposal.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
This is an alternative to [[LineupProposal]].&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1574</id>
		<title>LineupProposal</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal&amp;diff=1574"/>
				<updated>2009-08-17T23:09:43Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Lineup Proposal */ link my proposal 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Lineup Proposal ==&lt;br /&gt;
&lt;br /&gt;
Proposal by [[User:MattiasHolmlund|Mattias Holmlund]].&lt;br /&gt;
&lt;br /&gt;
(There is an alternate proposal on [[LineupProposal2]]).&lt;br /&gt;
&lt;br /&gt;
This page describes my proposal for a new capability for grabbers that I call &amp;quot;lineups&amp;quot;. It has not yet been decided on and no grabber implements it.&lt;br /&gt;
&lt;br /&gt;
The problem as I see it is that we need a way for applications such as MythTV to connect the channels that it can find on a videosource (a TV-card for example) to the xmltvids that it gets from the xmltv grabber. Each channel contained in an xmltv-file can be a part of several different lineups. This means that we need to be able to supply several different mappings for one channel. The mapping for a channel will also differ depending on which lineup the user has selected. Therefore, I think we need to have the lineup information separate from the channel-section of the xmltv-file. Note that the lineup information can in some cases contain mappings for channels that the grabber does not have schedule data for.&lt;br /&gt;
&lt;br /&gt;
Furthermore, I don't think we need to include the lineup information every time the grabber downloads schedules data. The PVR application will typically need lineup-information after a channel scan or when it detects that something has changed in the lineup via other means (changed service-name in an mpeg-stream etc.) The lineup-information will for at least some grabbers not come from the same source as the data. I would guess that at least some of the grabbers would fetch the lineup-data from community-run sites, and I think we can save a lot of bandwidth for these sites if we only download lineup-data when the PVR application really needs it.&lt;br /&gt;
&lt;br /&gt;
The mapping from tuning data to xmltvid is different for different providers. However, it is also different depending on the type of videosource. For analog TV, the mapping can be expressed as a frequency to xmltvid mapping. For DVB-T, several channels can share a single frequency (multiplex) and it is pretty easy to scan all frequencies, so there we can use the provider-name and service-name inside the MPEG-stream and map it to an xmltvid instead. For IP-TV, we can map a url for the stream to the xmltvid. For IP Multicast-TV we map a multicast IP address and port-number to the xmltvid.&lt;br /&gt;
&lt;br /&gt;
These mappings can be described in lineups. A lineup contains a set of channels that a customer can order from his provider. I would propose that lineups are not included in the xmltv-format and that they are instead described in separate xml-files. We can write the DTD as a part of the xmltv-project, but it should be separate from the current xmltv dtd.&lt;br /&gt;
&lt;br /&gt;
A sample lineup could look like this:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that there is a display-name for each channel even though this display-name can be found in the xmltv-file. The reason for this is that we might not have data for all channels, and then the user will at least have a display-name.&lt;br /&gt;
&lt;br /&gt;
The grabber shall support two new command-line options: --lineup and --list-lineups. They are used as follows:&lt;br /&gt;
&lt;br /&gt;
First, the application lets the user configure the grabber just as before. During the configuration, the grabber asks the user questions so it can learn which lineups the user has access to. How this is done is up to the grabber, but typically the user will be able to choose between a set of lineups somehow. The user shall be able to select several lineups at once. If a user chooses one or more lineups, it will probably not make sense to ask the user which channels he wants to download data for, since this is given by which lineups he has chosen.&lt;br /&gt;
&lt;br /&gt;
When the configuration is done, the application can ask the user which lineups the user has chosen with the --list-lineups parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --list-lineups&lt;br /&gt;
    stockholm.fri.boxer.se|DVB-T|Boxer Fri Stockholm&lt;br /&gt;
    total.canalplus.se|DVB-S|Canal+ Total&lt;br /&gt;
&lt;br /&gt;
The application can then ask for detailed information about each lineup with the --lineup parameter:&lt;br /&gt;
&lt;br /&gt;
    $ tv_grab_se_swedb --lineup stockholm.fri.boxer.se&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2 ABC&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lineup types ==&lt;br /&gt;
&lt;br /&gt;
We need to define the lineup-format for all available types of TV-sources and preferably radio as well.&lt;br /&gt;
&lt;br /&gt;
=== List ===&lt;br /&gt;
&lt;br /&gt;
The simplest type of lineup is the &amp;quot;list&amp;quot;. This only contains a list of channels with a display-name and an optional preferred-preset. It is useful in cases when we don't have any other information available. It cannot be used to map channels to xmltvids, but it can be used to select a set of channels that you want to receive data for.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;list&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The preferred-preset field tells the application which &amp;quot;button on the remote&amp;quot; this channel should preferably be connected to. This field is optional.&lt;br /&gt;
&lt;br /&gt;
All other lineup-types are extensions of the list-type.&lt;br /&gt;
&lt;br /&gt;
=== DVB-T ===&lt;br /&gt;
&lt;br /&gt;
For DVB-T, it is fairly easy for an application to scan all available frequencies and find all channels. Therefore, we don't need to include the frequencies in the lineup. Instead, we only include enough information to allow the application to uniquely identify each channel. Each channel in a DVB-T stream is identified by a provider-name and a service-name, so we can use these.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;DVB-T&amp;quot; id=&amp;quot;stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT1&amp;lt;/service-name&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;provider-name&amp;gt;Sveriges Television&amp;lt;/provider-name&amp;gt;&lt;br /&gt;
         &amp;lt;service-name&amp;gt;SVT2&amp;lt;/service-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
One advantage of not including the frequencies is that the number of different lineups decreases. This is because several different regions can use the exact same lineup even though they use different frequencies. In Sweden for example, we have roughly 50 different transmitters operating on different frequencies, but the country is only divided into five different regions for lineups.&lt;br /&gt;
&lt;br /&gt;
I think that DVB-S and DVB-C can use the same format and possibly also ATSC. So we might want to call the lineup-type DTV instead.&lt;br /&gt;
Analog TV&lt;br /&gt;
&lt;br /&gt;
For analog TV we have to use the frequency to identify the channel since there is no other channel identifier available.&lt;br /&gt;
&lt;br /&gt;
Should we use frequenzies (in Hz) or frequency numbers? Do the channel numbers mean the same frequency in all countries? How about Analog Cable?&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;Analog&amp;quot; id=&amp;quot;chateau.latresne.33.fr&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;33 - Latresne - Chateau d'Eau&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france2.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;31&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
      &amp;lt;channel id=&amp;quot;france3.fr&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;display-name lang=&amp;quot;fr&amp;quot;&amp;gt;France 3&amp;lt;/display-name&amp;gt;&lt;br /&gt;
        &amp;lt;preferred-preset&amp;gt;3&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
        &amp;lt;frequency-number&amp;gt;34&amp;lt;/frequency-number&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== IP TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with a url such as rtsp://...&lt;br /&gt;
&lt;br /&gt;
=== IP Multicast TV ===&lt;br /&gt;
&lt;br /&gt;
Identify each channel with an IP multicast address and a port-number.&lt;br /&gt;
STB&lt;br /&gt;
&lt;br /&gt;
In some countries, it is common with computers that get their video signal from an STB (Set-Top Box) and to change the channel, you have to tell the STB to change to a different preset.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;xmltv-lineup type=&amp;quot;STB&amp;quot; id=&amp;quot;stb.stockholm.fri.boxer.se&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;Boxer Fri Stockholm&amp;lt;/display-name&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt1.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 1&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;1&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
     &amp;lt;preset&amp;gt;1&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
       &amp;lt;channel id=&amp;quot;svt2.svt.se&amp;quot;&amp;gt;&lt;br /&gt;
         &amp;lt;display-name lang=&amp;quot;sv&amp;quot;&amp;gt;SVT 2&amp;lt;/display-name&amp;gt;&lt;br /&gt;
         &amp;lt;preferred-preset&amp;gt;2&amp;lt;/preferred-preset&amp;gt;&lt;br /&gt;
         &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
      &amp;lt;/channel&amp;gt;&lt;br /&gt;
    &amp;lt;/xmltv-lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the difference between preferred-preset and preset here. preset is the number that you have to tune the STB to to receive the channel. preferred-preset is the channel number that the user will likely prefer to have the channel mapped to on the remote to his computer. These two fields will likely contain the same value, but they are separate.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1572</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1572"/>
				<updated>2009-08-17T23:07:11Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: Main Page/lineupproposal2.html moved to LineupProposal2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=Main_Page/lineupproposal2.html&amp;diff=1573</id>
		<title>Main Page/lineupproposal2.html</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=Main_Page/lineupproposal2.html&amp;diff=1573"/>
				<updated>2009-08-17T23:07:11Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: Main Page/lineupproposal2.html moved to LineupProposal2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[LineupProposal2]]&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1571</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1571"/>
				<updated>2009-08-17T23:04:25Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog EU */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is also a station ID, but different numbers, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1570</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1570"/>
				<updated>2009-08-17T23:03:34Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog EU */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1569</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1569"/>
				<updated>2009-08-17T23:00:35Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* XML structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id service=&amp;quot;2&amp;quot; transport=&amp;quot;28&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1568</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1568"/>
				<updated>2009-08-17T22:59:28Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* XML structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''TODO'' better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1567</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1567"/>
				<updated>2009-08-17T22:57:33Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes even several of them received by the same TV/computer (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1566</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1566"/>
				<updated>2009-08-17T22:56:35Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: ZDF.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1565</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1565"/>
				<updated>2009-08-17T22:54:31Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format uses the term &amp;quot;channel&amp;quot; differently from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1564</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1564"/>
				<updated>2009-08-17T22:54:07Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what see in your TV guide and what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1563</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1563"/>
				<updated>2009-08-17T22:53:45Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Structure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes and what see in your TV guide.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast. This is how you receive the actual video and audio.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1562</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1562"/>
				<updated>2009-08-17T22:52:39Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* IPTV channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;iptv-url&amp;gt;rtp://....&amp;lt;/iptv-url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''iptv-url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1561</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1561"/>
				<updated>2009-08-17T22:52:15Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* IPTV channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;url&amp;gt;rtp://....&amp;lt;/url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to fetch the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1560</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1560"/>
				<updated>2009-08-17T22:51:56Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */ IPTV&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;br /&gt;
&lt;br /&gt;
== IPTV channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;iptv-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;url&amp;gt;rtp://....&amp;lt;/url&amp;gt;&lt;br /&gt;
 &amp;lt;/iptv-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''url''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
Where to receive the media stream.&lt;br /&gt;
&lt;br /&gt;
''TODO''&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1559</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1559"/>
				<updated>2009-08-17T22:42:03Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional)&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group''' (optional)&lt;br /&gt;
&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
boolean: &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' ID&amp;quot;, &amp;quot;'''transport''' ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original '''network''' ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;'''service''' name&amp;quot; and &amp;quot;'''provider''' name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1558</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1558"/>
				<updated>2009-08-17T22:40:02Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1557</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1557"/>
				<updated>2009-08-17T22:39:29Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The '''system''' (mandatory) is the television system, including the tuning tables, e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The '''number''' is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1556</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1556"/>
				<updated>2009-08-17T22:38:30Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data. For the user's (or application's) convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1555</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1555"/>
				<updated>2009-08-17T22:38:01Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct and other grabbers provide regional tuning data for the user's convenience. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1554</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1554"/>
				<updated>2009-08-17T22:36:51Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (not even unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct provides regional tuning data. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1553</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1553"/>
				<updated>2009-08-17T22:36:22Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog US */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via [http://en.wikipedia.org/wiki/Extended_Data_Services XDS] [http://www.ce.org/Standards/browseByCommittee_2523.asp Standard].&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (nor unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct provides regional tuning data. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1552</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1552"/>
				<updated>2009-08-17T22:35:19Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Stations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via XDS &amp;lt;http://en.wikipedia.org/wiki/Extended_Data_Services&amp;gt; &amp;lt;http://www.ce.org/Standards/browseByCommittee_2523.asp&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (nor unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct provides regional tuning data. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1551</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1551"/>
				<updated>2009-08-17T22:32:27Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Definition */ Example file&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
[http://www.bucksch.org/1/projects/various/xmltv/lineup.de.xml Example file] (for Germany, DVB-S Astra 19.2°)&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC 2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via XDS &amp;lt;http://en.wikipedia.org/wiki/Extended_Data_Services&amp;gt; &amp;lt;http://www.ce.org/Standards/browseByCommittee_2523.asp&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (nor unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct provides regional tuning data. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	<entry>
		<id>https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1550</id>
		<title>LineupProposal2</title>
		<link rel="alternate" type="text/html" href="https://wiki.xmltv.org/index.php?title=LineupProposal2&amp;diff=1550"/>
				<updated>2009-08-17T22:27:50Z</updated>
		
		<summary type="html">&lt;p&gt;Benb: /* Analog channels */ rfc2838id&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;During setup of a TV (recording) system, it is not only necessary to find channels by a channel scan, but also to properly name and sort the channels, and to assign the RCF2838-IDs, which associate the station to schedule information from XMLTV. This file format provides this information.&lt;br /&gt;
&lt;br /&gt;
It is separate from the scheduling (programme) information in the XMLTV XML format.&lt;br /&gt;
&lt;br /&gt;
= Structure =&lt;br /&gt;
&lt;br /&gt;
This format used &amp;quot;channel&amp;quot; different from the XMLTV DTD.&lt;br /&gt;
* A &amp;quot;station&amp;quot; is defined by the programmes, the content of the media. E.g. &amp;quot;BBC 1&amp;quot; is a station, and it airs the BBC news show at 8 PM. This is what the XMLTV file content describes.&lt;br /&gt;
* A &amp;quot;channel&amp;quot; is a technical means to transmit the station's broadcast.&lt;br /&gt;
E.g. The DVB-T channel in Cologne on frequency 129050000 Hz, with service ID 1802, is a channel, and the analog PAL channel E51 in Cologne is a different channel. But both may transmit the same station: BBC1.&lt;br /&gt;
&lt;br /&gt;
It is very common for one station to be transmitted on many different channels, sometimes several received by the same TV system (e.g. one via DVB-T and one via DVB-C or DVB-S).&lt;br /&gt;
Similarly, there are stations which are transmitted as HDTV and as SD, with the same content (apart from technical quality) - these are also different channels for the same station.&lt;br /&gt;
&lt;br /&gt;
We separate the problem into two parts:&lt;br /&gt;
# Identify a channel (which we found during scan) as a certain station (by its RFC2838 ID).&lt;br /&gt;
# Get metadata about a station, like long and short display names, logo, and the default preset number.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;*-channel&amp;gt; elements do the first, the &amp;lt;station&amp;gt; elements do the latter.&lt;br /&gt;
&lt;br /&gt;
= Definition =&lt;br /&gt;
&lt;br /&gt;
== XML structure ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;lineup&amp;gt;&lt;br /&gt;
   &amp;lt;stations&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     &amp;lt;station rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
     &amp;lt;/station&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/stations&amp;gt;&lt;br /&gt;
   &amp;lt;channels&amp;gt;&lt;br /&gt;
     &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;dvb-id network=&amp;quot;1&amp;quot; service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot;/&amp;gt;&lt;br /&gt;
       ...&lt;br /&gt;
     &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
     &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
       &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
     ...&lt;br /&gt;
   &amp;lt;/channels&amp;gt;&lt;br /&gt;
 &amp;lt;/lineup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TODO better word for &amp;quot;lineup&amp;quot;? At least define what the word &amp;quot;lineup&amp;quot; means.&lt;br /&gt;
&lt;br /&gt;
== Stations ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;station rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;long-name&amp;gt;ZDF&amp;lt;/long-name&amp;gt;&lt;br /&gt;
   &amp;lt;short-name&amp;gt;ZDF&amp;lt;/short-name&amp;gt;&lt;br /&gt;
   &amp;lt;preset&amp;gt;2&amp;lt;/preset&amp;gt;&lt;br /&gt;
   &amp;lt;logo url=&amp;quot;http://dummy.invalid/zdf.gif&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;group&amp;gt;oeff-rechtl&amp;lt;/group&amp;gt;&lt;br /&gt;
   &amp;lt;commercial-free&amp;gt;true&amp;lt;/commercial-free&amp;gt;&lt;br /&gt;
 &amp;lt;/station&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The globally unique ID of the station, per [http://www.apps.ietf.org/rfc/rfc2838.html RFC 2838]. It must follow the rules in the RFC, and the should match ID used by the XMLTV grabbers for the country of the station.&lt;br /&gt;
&lt;br /&gt;
This links the station to the XMLTV data, and also links the &amp;lt;station&amp;gt; to the &amp;lt;*-channel&amp;gt; elements within this document.&lt;br /&gt;
&lt;br /&gt;
Each rfc2838id must only appear in one &amp;lt;station&amp;gt; element in a document, i.e. there must not be two &amp;lt;station&amp;gt;s with the same rfc2838id. (There may be several &amp;lt;*-channel&amp;gt; elements with the same rfc2838id, though.)&lt;br /&gt;
&lt;br /&gt;
'''Long name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - long version.&lt;br /&gt;
This is not necessarily the official legal name of the station, but a name that people find nice in unambiguously identifying the station.&lt;br /&gt;
Should be used in places in the UI where display space is not short.&lt;br /&gt;
&lt;br /&gt;
It should be no longer than 30-50 characters. Spaces are allowed. May contain UTF characters.&lt;br /&gt;
&lt;br /&gt;
'''Short name''' (mandatory):&lt;br /&gt;
The display name of the station, as shown to the user - short version.&lt;br /&gt;
A name that people find nice in unambiguously identifying the station, but at the same time short.&lt;br /&gt;
To be used in places in the UI where display space is short.&lt;br /&gt;
&lt;br /&gt;
Must not be longer than 10 characters (hard limit). Spaces are allowed.&lt;br /&gt;
Ideally &amp;lt;= 5 characters. Ideally, only characters A-Z, 0-9 and space are used.&lt;br /&gt;
&lt;br /&gt;
'''preset''' (optional):&lt;br /&gt;
&lt;br /&gt;
The number that the user keys in on the remote control to change to this station.&lt;br /&gt;
Also used for sorting channels, where channels are listed. This allows&lt;br /&gt;
* to put the most important channels first&lt;br /&gt;
* to adhere to local conventions, e.g. BBC1 is expected on button 1 in the UK, while German users expect ARD on 1 and ZDF on 2.&lt;br /&gt;
* to create a logical order (e.g. news stations together, kids stations together, or a certain pay-TV bouquet together).&lt;br /&gt;
&lt;br /&gt;
This is also useful for satellite users (e.g. Astra in Europe) which receive &amp;gt;1000 channels, but 98% of them are essentially 'spam'.&lt;br /&gt;
&lt;br /&gt;
This element may be omitted, in which case the channel is to be put ''after'' the channels with a preset.&lt;br /&gt;
&lt;br /&gt;
This element only gives a default preset. A user should be able to easily change it at will (in a configuration/setup program), and the user's choice must be preserved over the choice here.&lt;br /&gt;
''TODO'' what to do when the presets here are re-arranged, and a new channel has the same preset that the user assigned to another channel? Find first free channel after the assigned one? Can get complicated, esp. on the next change after that.&lt;br /&gt;
&lt;br /&gt;
'''group'''&lt;br /&gt;
This is another way or sort channels. You can assign a common string as group to a set of channels, to reflect that they are in some way related and could be displayed together.&lt;br /&gt;
&lt;br /&gt;
E.g. you may mark all Canal+ Pay-TV stations as group &amp;quot;Canal+&amp;quot;, or all news stations as group &amp;quot;news&amp;quot; and all cartoon stations as group &amp;quot;kids&amp;quot;. There can (currently) only be one group per station, so if Canal+ broadcasts cartoon stations, decide for either &amp;quot;Canal+&amp;quot; or &amp;quot;news&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The group name may or may not be displayed to the user, and may not have any effect at all.&lt;br /&gt;
&lt;br /&gt;
'''logo''' (optional)&lt;br /&gt;
&lt;br /&gt;
The attribute '''url''' (mandatory) contains the URL (http: or file:) to a PNG, JPEG or GIF image of the station's logo.&lt;br /&gt;
&lt;br /&gt;
The attribute '''res''' (optional) contains the size of the image in pixels, in form width &amp;quot;x&amp;quot; height, e.g. &amp;quot;64x48&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The element &amp;lt;logo&amp;gt; may be included several times, to include several logos of different sizes/resolutions.&lt;br /&gt;
&lt;br /&gt;
'''commercial-free''' (optional)&lt;br /&gt;
&lt;br /&gt;
Whether the station has advertisement in the content. Advertisements may be&lt;br /&gt;
* between programmes (e.g. only before and after movies, not during the movie)&lt;br /&gt;
* in the middle of the programmes (e.g. an interruption for 30 seconds every 10 minutes or for 5 minutes every 40 minutes)&lt;br /&gt;
* on top of the programme (e.g. while the movie is running, there is an overlay text or icon or sound, which advertises for a product, service or for another show on the same station).&lt;br /&gt;
* part of the programme (e.g. sponsoring, product placement etc.)&lt;br /&gt;
&lt;br /&gt;
It is up to the data source to make an (unbiased) judgment decision which stations are considered commercial-free. For example, you may label stations which have advertisements only between movies, and include the full teaser and end credits of the movie still as &amp;quot;commercial-free&amp;quot;. You may also not count the airing of a Hollywood movie as product placement, but a pure home shopping station as non-stop advertisement.&lt;br /&gt;
&lt;br /&gt;
== DVB Channels ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;dvb-channel rfc2838id=&amp;quot;zdf.de&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-name provider=&amp;quot;ZDFvision&amp;quot; service=&amp;quot;ZDF&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;dvb-id service=&amp;quot;28006&amp;quot; transport=&amp;quot;1079&amp;quot; network=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;encrypted&amp;gt;false&amp;lt;/encrypted&amp;gt;&lt;br /&gt;
 &amp;lt;/dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory):&lt;br /&gt;
The ID of the station, see &amp;lt;station&amp;gt;. Allows to link the channel to the &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Several &amp;lt;dvb-channel&amp;gt; or &amp;lt;*-channel&amp;gt; elements with the same rfc2838id are allowed and intended. In fact, that's why &amp;lt;station&amp;gt; and &amp;lt;*-channel&amp;gt; are separate.&lt;br /&gt;
&lt;br /&gt;
'''dvb-id''' (optional)&lt;br /&gt;
The &amp;quot;service ID&amp;quot;, &amp;quot;transport ID&amp;quot; (also called &amp;quot;transponder ID&amp;quot;) and &amp;quot;original network ID&amp;quot; (in decimal numbers), as transmitted on the DVB stream in the PAT, SDT and NIT.&lt;br /&gt;
&lt;br /&gt;
All of service, transport and network must be given, they are only valid as a triple. An application should not use only the serviceID, but the whole triple, to identify a channel, as the same service ID (e.g. 2) may be used for entirely different channels/stations on different transponders.&lt;br /&gt;
&lt;br /&gt;
This is the preferred way to identify a DVB channel. However, it may differ for each DVB-T and DVB-C region/broadcaster, so that's why dvb-name is provided as fallback way to identify the channel.&lt;br /&gt;
&lt;br /&gt;
'''dvb-name''' (optional)&lt;br /&gt;
The &amp;quot;service name&amp;quot; and &amp;quot;provider name&amp;quot; strings, as transmitted on the DVB stream in the SDT.&lt;br /&gt;
&lt;br /&gt;
It should be unique per station (modulo HD), i.e. should be the same on DVB-T, DVB-C and DVB-S (in the same country / station cover area). However, in practice, some operators / cable head stations mess up and use e.g. &amp;quot;ZDFinfo&amp;quot; vs. &amp;quot;ZDF info&amp;quot; vs. &amp;quot;ZDFinfokanal&amp;quot; for the same station. In this case, include several &amp;lt;dvb-channel&amp;gt; elements, with all variations, all pointing to the same rfc2838id, but only one &amp;lt;station&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The provider name is optional, but should be included when known. An application may chose to ignore the provider name, depending on experiences.&lt;br /&gt;
&lt;br /&gt;
'''encrypted''' (optional)&lt;br /&gt;
The channel is scrambled and can only be used if the user has a specific descrambler and appropriate smart card. This is used for&lt;br /&gt;
* Pay-TV&lt;br /&gt;
* some cable systems&lt;br /&gt;
* to limit the geographical coverage (e.g. to Austria, to block German viewers, to reduce movie license costs).&lt;br /&gt;
&lt;br /&gt;
If the channel is scrambled, this element is mandatory and must contain the text &amp;quot;true&amp;quot;, otherwise it can either be omitted or contain &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Analog channels ==&lt;br /&gt;
&lt;br /&gt;
=== Analog US ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;fcc-callsign&amp;gt;BBC1&amp;lt;/fcc-callsign&amp;gt;&lt;br /&gt;
   &amp;lt;frequency number=&amp;quot;E51&amp;quot; system=&amp;quot;NTSC-M&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''rfc2838id''' (mandatory)&lt;br /&gt;
See &amp;lt;dvb-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''fcc-callsign''' (optional)&lt;br /&gt;
For the US, where the FCC assigns a unique identifier with up to 5 characters. It is transmitted on the air via XDS &amp;lt;http://en.wikipedia.org/wiki/Extended_Data_Services&amp;gt; &amp;lt;http://www.ce.org/Standards/browseByCommittee_2523.asp&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Other countries don't maintain official (nor unofficial) callsigns. Do not use this element for other identification schemes than the FCC-assigned US callsigns.&lt;br /&gt;
&lt;br /&gt;
'''frequency''' (optional)&lt;br /&gt;
Mainly (but not exclusively) for the US, where Schedule Direct provides regional tuning data. Only provide this information, if you know it is applicable (tunable) for this user, e.g. after having asked him about his physical location and/or reception method.&lt;br /&gt;
&lt;br /&gt;
The system is the television system, including the tuning tables (!), e.g. &amp;quot;NTSC-M&amp;quot; or &amp;quot;PAL-G&amp;quot;.&lt;br /&gt;
The number is the channel number in the tuning tables, e.g. &amp;quot;5&amp;quot; or &amp;quot;54&amp;quot;. It may contain letters, e.g. &amp;quot;E51&amp;quot; or &amp;quot;S05&amp;quot; for extended and special channels, which have been added later to the VHF or UHF spectrum. Length &amp;lt;= 5 characters.&lt;br /&gt;
&lt;br /&gt;
=== Analog EU ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;analog-channel rfc2838id=&amp;quot;1.bbc.co.uk&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;cni tt-8-30-1=&amp;quot;0x447F&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/analog-channel&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''cni tt-8-30-1''' (optional)&lt;br /&gt;
For the EU, where a numerical CNI of the station is transmitted in Teletext packet 8/30 format 1.&lt;br /&gt;
Compare [http://zapping.sourceforge.net/doc/libzvbi/structvbi__network.html#o5 Zapping API docs].&lt;br /&gt;
The list of station IDs is at [http://pda.etsi.org/pda/home.asp?wki_id=E7d9DkZdLL09830%27Y3uW ETSI TR 101 231]&lt;br /&gt;
Note that there's also a Teletext packet 8/30 format 2, which is different, therefore the complicated element name.&lt;/div&gt;</summary>
		<author><name>Benb</name></author>	</entry>

	</feed>