Skip to main content

Uniform Resource Identifier (URI) Scheme for Digital Video Broadcasting (DVB) Programme Resources
draft-mcroberts-uri-dvb-08

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Mo McRoberts , Alexander Adolf
Last updated 2012-03-26
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
RFC Editor RFC Editor state ISR
Details
draft-mcroberts-uri-dvb-08
Network Working Group                                  M. McRoberts, Ed.
Internet-Draft                                      British Broadcasting
Intended status: Informational                              Corportation
Expires: September 27, 2012                                     A. Adolf
                                                         Condition-ALPHA
                                                          March 26, 2012

Uniform Resource Identifier (URI) Scheme for Digital Video Broadcasting
                       (DVB) Programme Resources
                       draft-mcroberts-uri-dvb-08

Abstract

   Uniform Resource Identifier (URI) schemes for broadcasting programme
   resources transmitted over MPEG-2 Transport Streams [MPEG-Systems]
   have been devised in their process of creating standards by the
   Digital Video Broadcasting Project (DVB), the Association of Radio
   Industries and Businesses in Japan (ARIB) and the OpenCable
   Application Platform (OCAP) to acquire current and future scheduled
   publications of broadcast media content from multimedia applications
   such as HTTP, MHP [DVB-MHP], OCAP [OCAP1.0] or other XML based
   metadata.

   These URI are used to locate the actual digital TV, Radio or other
   multimedia broadcast programme services (i.e., channels or events)
   and also the audio-visual components related to that programme, for
   example an HTTP-based programme guide on the Web or other XML-based
   electronic programme guides in digital broadcast receivers.

   This document defines the "dvb" URI scheme for the benefit of the
   Internet community, given its definition as part of the Digital Video
   Broadcasting (DVB) suite of ETSI standards.

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

McRoberts & Adolf      Expires September 27, 2012               [Page 1]
Internet-Draft                URIs for DVB                    March 2012

   This Internet-Draft will expire on September 27, 2012.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.

McRoberts & Adolf      Expires September 27, 2012               [Page 2]
Internet-Draft                URIs for DVB                    March 2012

1.  Introduction

   Standards governing televisions, set-top boxes and other consumer
   electronics devices have for some time been developed with the
   Internet in mind.  The use of Universal Resource Identifiers (URIs)
   [RFC3986] is now commonplace, including for the purpose of
   identifying resources delivered by way of terrestrial, satellite and
   cable broadcasts.

   For this purpose, a URI scheme was developed as part of the Digital
   Video Broadcasting [DVB] suite of standards specifically for the
   purpose of identifying broadcasts delivered by way of DVB-compliant
   broadcasting systems.

   With the advent of digital broadcasting, digital multimedia broadcast
   services to the home, based on MPEG-2 Transport Streams
   [MPEG-Systems], have been widely available in recent years.  Each
   broadcast programme and component (i.e. audio-visual and generic data
   components) are identifiable within the MPEG-2 Transport Stream.
   Beyond digital broadcast, television and radio programmes can be
   delivered to receivers over an IP-based network within MPEG-2
   Transport Stream packets.

   The Electronic Programme Guide (EPG) service for television and radio
   programmes which allows people to find and select programmes must be
   able to identify a given programme in a canonical form.  As programme
   guides are increasingly being made available on the Web, and on-
   device programme guides are taking advantage of Internet
   connectivity, and as receiving devices are increasingly able to
   present programmes delivered both via digital broadcast and a variety
   of IP-based protocols, the the use of URIs to identify programmes is
   an obvious pragmatic choice.

   This document defines the Uniform Resource Identifier (URI) schemes
   for broadcast programme resources over MPEG-2 Transport Stream
   [MPEG-Systems] for DVB services, conforming to the generic URI syntax
   [RFC3986] to aid in interoperability with existing IP-based services.

   The Digital Video Broadcasting Project (DVB) is an industry-led
   consortium of over 270 broadcasters, manufacturers, network
   operators, software developers, regulatory bodies and others in over
   35 countries committed to designing global standards for the global
   delivery of digital television and data services.  Services using DVB
   standards are available on every continent with a total of more than
   500 million DVB receivers already deployed.  More information on DVB
   can be found on their website at http://www.dvb.org

   This URI specification is for a permanent assignment.

McRoberts & Adolf      Expires September 27, 2012               [Page 3]
Internet-Draft                URIs for DVB                    March 2012

1.1.  Transmission Scheme

   The audio, visual or private data components constituting a TV/radio
   programme ("service") are defined as elementary stream (ES)
   components.  Several of these TV/radio programmes are bundled in a
   transport stream (TS) multiplex for delivering over a broadcast
   transmission network (e.g. satellite, cable or terrestrial).  The
   distinguished unique number for each TS multiplexed packet,
   elementary stream component, transport stream and transmission
   network is assigned and transmitted over the satellite, cable or
   terrestrial broadcasting media, or over an IP network, together with
   an information table which describesthese assigned numbers, as
   described by the MPEG-2 standard [MPEG-Systems].

           +---------------------------------------------------+
           | BROADCASTING NETWORK                              |
           | (e.g. Satellite, Cable, Terrestrial)              |
           |    +---------------------------------------+      |
           |    | TRANSPORT STREAM MULTIPLEX            |-*    |
           |    | (e.g. channel)                        | |    |
           |    |   +-----------------------------+     | |    |
           |    |   | SERVICE                     |-*   | |    |
           |    |   |  +---------------------+    | |   | |    |
           |    |   |  | Audio/Visual and    |-*  | |   | |    |
           |    |   |  | Private Data        | |  | |   | |    |
           |    |   |  | Components          | |  | |   | |    |
           |    |   |  +---------------------+ |  | |   | |    |
           |    |   |    *---------------------*  | |   | |    |
           |    |   |                             | |   | |    |
           |    |   +-----------------------------+ |   | |    |
           |    |     *-----------------------------*   | |    |
           |    |                                       | |    |
           |    +---------------------------------------+ |    |
           |      *---------------------------------------*    |
           |                                                   |
           +---------------------------------------------------+

           Programme Delivery Scheme in MPEG-2 Transport Stream

   These elements are unambiguously identified in DVB systems through
   numerical identifiers:

   o  A *network_id* identifies a broadcast transmission network.  On
      satellite and IP broadband, typically one network_id corresponds
      to an operator.  On cable and terrestrial, where different radio
      frequencies might be used in different regions, operators
      typically use one network_id per such region.

McRoberts & Adolf      Expires September 27, 2012               [Page 4]
Internet-Draft                URIs for DVB                    March 2012

   o  An *original_network_id* is used where TV/radio programmes are
      taken from one network and are re-transmitted on another one
      (noting that a "network" in this context may simply be a different
      broadcast region for the same operator).  The original_network_id
      is therefore used by receivers as a means of determining
      equivalence across different networks.

   o  A *transport_stream_id* is used to refer to a time-domain
      multiplex of several programmes carried in TS packets.  One or
      more multiplexes can be transmitted on any given radio frequency
      in a DVB network.

   o  A *service_id* identifies a TV, radio or data programme within a
      TS multiplex.  The number of programmes is limited by the capacity
      of the underlying physical channel.

   o  A *component_tag* identifies an elementary stream (ES) of video,
      audio, teletext, subtitles, or other data within a service.

                  +---------+
                  |         |-------+
                  |         |       >+++++ Service 1 +++++
                  |         >  TS 1 |
                  |         |       >***** Service 2 *****
                  |  NET 1  |-------+
                  |         |-------+
                  |         |       >===== Service 3 =====
                  |         >  TS 2 >xxxxx Service 4 xxxxx
                  |         |       >##### Service 5 #####
                  |         |-------+
                  +---------+

          Relationship of Network, Transport Stream, and Service

   The original_network_id is an attribute of a transport stream (TS).
   In the simplest case, all services originate from the network on
   which they are transmitted.  In this case, the original_network_id of
   all the TS will be equal to the network_id, and this typically occurs
   on networks operated by public broadcasters.  If one of the public
   broadcaster's transport streams is, for example, re-transmitted by a
   cable operator, the information about this stream would containe the
   cable operator's network_id, and the original_network_id of the
   public broadcaster.

   Thus, all assigned network_id values must correlate with actual
   broadcast infrastructure, whereas this is not required for
   original_network_id values which have a more logical basis.  A

McRoberts & Adolf      Expires September 27, 2012               [Page 5]
Internet-Draft                URIs for DVB                    March 2012

   globally active content provider may for example choose to register
   an original_network_id, and distribute pre-multiplexed transport
   stream to broadcasters, without operating any broadcast network of
   its own.

   The assignment of values for both original_network_id and the
   network_id are coordinated by the DVB Project.  The DVB Project in
   turn has delegated the management of DVB identifiers to DVB Services
   Sarl [DVB-SVCS].  DVB Services maintains a public register of all
   assignments, and accepts requests for new assignments on their
   website.

   Due to the way broadcast transmission networks are operated (and, to
   an extent, the design of MPEG-2), some relationships exist between
   these identifiers:

   o  Each TS is part of exactly one orginial_network_id (see above).

   o  Hence, each TS is unambiguously identified by the tuple
      {original_network_id, transport_stream_id}.

   o  According to [DVB-SI-SPEC], each service_id is unique within a TS.
      Hence a service is unambiguously identified by the tuple
      {original_network_id, transport_stream_id, service_id}.

   o  [DVB-SI-GDL] additionally requires that each service_id be unique
      within an original_network_id.  Hence, in areas where [DVB-SI-GDL]
      has been made part of the broadcast profile, the tuple
      {original_network_id, service_id} unambiguously identifies a
      service.

   During the process of performing a "service scan", a receiver will
   capture the identifying information contained within the transport
   streams and store their transport_stream_id, original_network_id and
   network_id, as well as the service_id values of all of the services
   carried within that transport stream.  As each radio frequency
   channel is scanned, the receiver constructs a table correlating each
   of these tuples with the radio frequency channels and other
   modulation parameters, such that when it is required to switch to
   specific service within a transport stream, it can tune the radio
   receiver appropriately.  Within the context of [DVB-IPTV], of course,
   there are no radio frequencies, however the same model of
   broadcasters, networks and services is maintained and the same
   identifiers are used with the same semantics.

   A DVB service is composed of one or more components.  These are
   identified within the context of a service by their component_tag.  A
   component can be either an elementary stream (ES) carrying video,

McRoberts & Adolf      Expires September 27, 2012               [Page 6]
Internet-Draft                URIs for DVB                    March 2012

   audio, teletext, subtitles, or other synchronised data or generic
   data (see also [DVB-DATA], [DVB-TVA] and [DVB-MHP]).  Each of these
   components is sliced into fragments and packetised in TS packets
   [MPEG-Systems].  All packets for a given component are labeled with
   the same TS Packet Identifier (PID), effectively providing a virtual
   channel within the TS for that component.  The packets are time-
   division multiplexed according to each component's data rate
   requirements for broadcast.

           ...|v|v|v|a|t|v|v|v|v|v|a|s|v|v|a|v|v|t|a|v|v|...
              |1|1|1|1|1|2|2|2|2|2|2|2|1|1|1|2|2|1|2|1|2|
          ---------------------------------------------------->
                                                          time
           |x| : a TS packet
           |x|

           v1, a1, t1: SD video, audio and teletext of service 1
           v2, a2, s2: HD video, audio and subtitles of service 2

                     Example TS time domain multiplex

   In the above figure, all TS packets for "v1" would share the same PID
   value.  Similarly, all TS packets for "a2" would also share a
   different PID value, and so on.  The metadata describing the network,
   transport streams, services, and their components is transmitted
   within a TS using well-known PID values according to [MPEG-Systems]
   and [DVB-SI-SPEC].  These metadata TS packets are not shown in the
   above figure for clarity.

McRoberts & Adolf      Expires September 27, 2012               [Page 7]
Internet-Draft                URIs for DVB                    March 2012

2.  Digital Video Broadcasting URI Scheme

   The DVB URI is defined by [DVB-URI], and that shall be considered the
   authoritative source of the definition of the scheme-specific-part of
   the DVB URI.

   URIs employing the dvb scheme are URLs.  DVB URLs may refer to any of
   the following kinds of resource:

   o  A DVB service

   o  Components within a DVB service (such as an audio or video stream)

   o  An event (for example, a programme)

   o  A transport stream

   o  A file contained within a DSM-CC object carousel

   o  Interactive applications

2.1.  Syntax

   This section details the components of the syntax.  The syntax also
   makes use of components defined in [RFC3986] and [RFC5234].  These
   are not reproduced here for brevity.  Future revisions of [DVB-URI]
   and related specifications may add additional syntax elements or
   otherwise extend the dvb URI scheme to support emerging DVB-based
   applications.

   This URI scheme is in conformance with the generic URI syntax
   [RFC3986] and uses the registry-based naming authority version of
   that.  It takes the form:

   DVB-URI    = dvb-scheme ":" dvb-path

   dvb-scheme = "dvb"

   dvb-path   = ( "//" ( dvb-net-entity [ path-absolute ] ))
              / ( "//" dvb-app-entity )
              / path-absolute

   When the dvb-path part only consists of a path-absolute, the URI
   refers to a file in the default object carousel within the current
   DVB service.  The "current" service is dependent on the usage
   context.

McRoberts & Adolf      Expires September 27, 2012               [Page 8]
Internet-Draft                URIs for DVB                    March 2012

2.1.1.  dvb-scheme

   The dvb-scheme name represents the transmission system using the
   MPEG-2 standard in the digital broadcasting service in accordance
   with Section 3.1 of [RFC3986].

   In this definition "dvb" represents the DVB system which is based on
   [BT.1306], [BO.1516], [J.83], and [DVB-IPTV].

2.1.2.  dvb-net-entity

   A dvb-net-entity uniquely identifies an originator, transport stream,
   service, event or component within the DVB system, either by way of
   numeric identifiers or through the use of textual service identifiers
   (some of which are pre-defined, while others may be advertised within
   the system).  The dvb-net-entity may also refer to a specific DVB
   carousel, or include a timed event constraint.

   The general syntax of the dvb-net-entity is:

dvb-net-entity             = transport-stream / service-entity

transport-stream           = original-network-id "." transport-stream-id

service-entity             = dvb-service [ "." component-set [ "$" carousel-id ]]
                             [ event-constraint ]

dvb-service                = ( original-network-id "." [ transport-stream-id ] "." service-id )
                           / ( "'" textual-service-identifier "'" )

original-network-id        = hex-string

transport-stream-id        = hex-string

service-id                 = hex-string

textual-service-identifier = reg-name

carousel-id                = hex-string

hex-string                 = 1*HEXDIG

   The dvb-net-entity, if present, may identify one the following:

   o  A transport stream (through combination of original_network_id and
      transport_stream_id)

McRoberts & Adolf      Expires September 27, 2012               [Page 9]
Internet-Draft                URIs for DVB                    March 2012

   o  A service, either through hexadecimal numeric identifiers or
      through in textual form

   o  An audio, visual, or data component within a service

   o  A carousel contained within a component of a service

   o  An event which occurs within a service

2.1.2.1.  component-set

   The component-set referenced in the syntax above is used to identify
   one or more components of a service and takes the form:

component-set                     = component-tag-set
                                  / qualified-component-set
                                  / fully-qualified-component-set

component-tag-set                 = component-tag *( "&" component-tag )

component-tag                     = hex-string

qualified-component-set           = qualified-component *( "&" qualified-component )

qualified-component               = component-type "=" component-id

component-type                    = "video" / "audio" / "data" / "subtitle"
                                  / "teletext" / "dvbst"

component-id                      = component-tag / iso639-language-code
                                  / "default" / "current"
                                  / "hearing_impaired" / "visually_impaired"
                                  / "none"

fully-qualified-component-set     = fully-qualified-component
                                    *( "&" fully-qualified-component )

fully-qualified-component         = "fqc=" stream-content-and-component-type
                                    "," component-tag
                                    [ "," iso639-language-code ]

stream-content-and-component-type = hex-string

iso639-language-code              = 3ALPHA

McRoberts & Adolf      Expires September 27, 2012              [Page 10]
Internet-Draft                URIs for DVB                    March 2012

2.1.2.2.  event-constraint

   An event-constraint identifies an event occurring within a service:

   event-constraint = ( event-ref [time-constraint] )
                    / time-constraint

   event-ref        = ";" [ event-id ] [ ";" tva-id ]

   event-id         = hex-string

   tva-id           = hex-string

   time-constraint  = "~" time-duration

   time-duration    = start-time "--" duration

   start-time       = date "T" time "Z"

   duration         = "PT" hours "H" minutes "M" [ seconds "S" ]

   date             = year month day

   time             = hours minutes [ seconds ]

   year             = DIGIT DIGIT DIGIT DIGIT

   month            = DIGIT DIGIT

   day              = DIGIT DIGIT

   hours            = DIGIT DIGIT

   minutes          = DIGIT DIGIT

   seconds          = DIGIT DIGIT

   An event may be identified by its event-id, a TV-Anytime tva-id, a
   start-time and duration according to UTC, or a combination of some or
   all of the three.

2.1.3.  dvb-app-entity

   A dvb-app-entity is a specific form of DVB entity identifier which is
   used in interactive applications, and takes the form:

McRoberts & Adolf      Expires September 27, 2012              [Page 11]
Internet-Draft                URIs for DVB                    March 2012

 dvb-app-entity   = ( "current" [ ( ".audio" / ".video" / ".av" ) ] )
                  / "original"
                  / ( ( "current" / dvb-service ) ".ait/" ait-abs-path )

 ait-abs-path     = "app-root" / ait-application

 ait-application  = org-id-part "." app-id-part [ "?" ait-params ]

 ait-params       = "arg_" 1*DIGIT "=" *uric [ "&" ait-params ]

 org-id-part      = lowposhex-string

 app-id-part      = lowposhex-string

 lowposhex-string = lowposhex *lowhex

 lowhex           = DIGIT / "a" / "b" / "c" / "d" / "e" / "f"

 posdigit         = "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9"

 lowposhex        = posdigit / "a" / "b" / "c" / "d" / "e" / "f"

   DVB interactive applications are Java Xlets that are carried in the
   broadcast signal.  Terminals extract and then execute these Xlets.
   They are advertised inside the broadcast signal in the Application
   Information Table (AIT).  The dvb-app-entity can thus refer to such
   application advertisements in its ".ait/" form.  In its other forms,
   the dvb-app-entity refers to a DVB service or components thereof
   which are used in conjunction with the currently running application.
   For further information, please see [DVB-MHP].

2.2.  Encoding

   Section 5 of [DVB-URI] specifies that:

   "All characters not within the range of characters allowed in a URI
   must be encoded into UTF-8 and included in the URI as a sequence of
   escaped octets.  An escaped octet is encoded as a character triplet,
   consisting of the percent character "%" followed by the two
   hexadecimal digits representing the octet code."

2.3.  Community Considerations

2.3.1.  Context of Use

   The "dvb" URIs are used as references to resources in digitial
   multimedia programmes, most often within the context of DVB itself:
   interactive television applications use them in order to locate

McRoberts & Adolf      Expires September 27, 2012              [Page 12]
Internet-Draft                URIs for DVB                    March 2012

   resources and to reference services and programmes.  These are
   typically broadcast via satellite, cable and terrestrial systems, but
   may also be retrieved on-demand from a server via the Internet.
   Providers of such broadcast services may e.g. reference programmes in
   the broadcast from an Electronic Programme Guide (EPG) which is
   published on their web- site.  On another example, the metadata which
   is part of the multimedia broadcasts can also contain such URIs to
   establish hyperlinks between broadcast services.  This might for
   instance include multi-angle video services (e.g. for sports events).
   Users of suitably-equipped clients -- i.e. with a suitable tuner card
   and software installed (Open Source tools including
   <http://www.linuxtv.org/> and <http://www.mythtv.org/>) -- are able
   to exchange such URIs (e.g. via an instant messaging service or
   email) to provide each other clickable hyperlinks to multimedia
   content they deem of interest.

   DVB has published specifications for the distribution of multimedia
   services via IP unicast and multicast mechanisms.  In this context,
   such URIs are usable in any player client software (no tuner card
   required) that implements the respective protocols and has the
   relevant audio and video codecs installed.

   o  For example, a receiver connected to a local area network might
      allow other devices to query it for information regarding the
      current programme or service: in this context, a dvb URI would
      typically be the most authoritative single identifier which could
      be used to to refer to that programme.

   o  Similarly, a web service can be implemented by a platform operator
      or a broadcaster (or some party working on their behalf) which
      allows resolution of dvb URIs - this would allow a device to
      retrieve web pages or other content which relate to the current
      programme (or some other entry in the device's Electronic
      Programme Guide).

   Implementing such a system naturally requires some mechanism for
   devices to discover an appropriate resolution service.  DVB has
   developed has developed a service discovery and selection (SD&S)
   solution as part of [DVB-IPTV].

2.3.2.  Resolution Considerations

   The resolution process is determined through the development of DVB
   standards by the Digital Video Broadcasting Project (DVB).

   Since the implementations envisaged cover a wide range of devices
   with quite different access methods and capabilities, no single
   resolution or delegation mechanism can be referenced in this

McRoberts & Adolf      Expires September 27, 2012              [Page 13]
Internet-Draft                URIs for DVB                    March 2012

   document.

   Currently 2 client system classes are covered by DVB specifications:

   o  A broadcast set-top box or other receiver which only has a
      unidirectional, receive-only connection -- for example by way of a
      UHF radio receiver.  Hence, all DVB URIs need to be resolvable
      from the service discovery information received within the
      broadcast stream.

   o  A "home network end device" (HNED) which could be an IPTV set-top
      box, networked TV or personal digital recorder with an Ethernet or
      WLAN connection to a home gateway device.

   Further device classes will be addressed as DVB standardisation
   progresses.  The dvb URIs must however remain valid.  DVB will define
   appropriate resolution mechanisms to ensure that DVB URIs remain
   valid for those new device classes as well.

   For the two above example device classes, three mechanisms of
   conveying such resolution information are currently defined by DVB:

   o  Repeated, cyclic transmission of service discovery information as
      auxiliary data in digital TV broadcast streams over satellite,
      cable or terrestrial transmissions according to [DVB-SI-SPEC],
      [DVB-DATA] and [DVB-TVA].  Typically, this information is collated
      and stored during a "service scan".  It can then be looked up at
      point of resolution, and the receiver may tune to the associated
      frequency and if demultiplex the appropriate transport stream.

   o  Repeated, cyclic multicast transmission of SD&S Records via the
      DVBSTP protocol according to [DVB-IPTV].

   o  Unicast delivery of SD&S Records in response to HTTP "GET /dvb/
      sdns" requests according to [DVB-IPTV].

2.3.2.1.  Identifier Management

   For some of the identifiers used in the DVB URI syntax, DVB provides
   a public registry which is operated by DVB Services Sarl [DVB-SVCS]
   and is available on the Web at http://www.dvbservices.com/. [1] On
   that site, the registry tables can be viewed, downloaded, and
   applications for new identifiers can be submitted.  Most of the
   identifiers not listed in the registry are under the scope of one of
   the registered identifiers (for example the service_id is under
   control of the holder of a network_id or original_network_id).  A
   select few identifiers are not open for registration to the public,
   and are managed by DVB itself.  For details on the nature of each

McRoberts & Adolf      Expires September 27, 2012              [Page 14]
Internet-Draft                URIs for DVB                    March 2012

   identifier, please refer ot the corresponding DVB standard.

2.3.3.  Implementation Considerations

2.3.3.1.  Considerations for resolution server software

   With on-going development of DVB standards, DVB will establish
   requirements and seek candidates for operating resolution servers as
   appropriate.

   To boot-strap the resolution process, a DVB client needs to discover
   an entry point (or set of) from which to obtain an initial Service
   Discovery and Selection XML record:

   o  By default, the service discovery information is provided on the
      IANA registered well-known port dvbservdsc (port number 3937) via
      tcp and udp (see http://www.iana.org/assignments/port-numbers) on
      the IANA registered well-known multicast addresses 224.0.23.14
      (DvbServDisc on IPv4) and FF0X:0:0:0:0:0:0:12D (DvbServDisc on
      IPv6).

   o  As set forth in [DVB-IPTV], a list of non-default Service
      Discovery and Selection (SD&S) entry points addresses may also be
      provided via DNS based on the service location resource record
      (SRV RR) [RFC2782].  The service name for DVB services is
      "_dvbservdsc", the protocol may be tcp or udp, while the rest of
      the name is the domain name maintained by DVB for service
      discovery.  This domain name is set to "services.dvb.org".  The
      DVB organization will maintain the services.dvb.org domain name
      for service discovery and new service providers should register
      with DVB to add them to the DNS SRV list.

2.3.3.2.  Considerations for resolution client software

   To obtain the initial Service Discovery and Selection (SD&S) XML
   record, a client must by default first join the IANA registered well-
   known multicast addresses 224.0.23.14 (DvbServDisc on IPv4) and/or
   FF0X:0:0:0:0:0:0:12D (DvbServDisc on IPv6) and try to obtain a boot-
   strap record from the IANA registered well-known port dvbservdsc
   (port number 3937) via tcp and udp (see
   http://www.iana.org/assignments/port-numbers).

   To discover non-default entry points addresses, [DVB-IPTV] defines
   that a list of Service Discovery and Selection (SD&S) entry points
   addresses may be acquired via DNS according to the service location
   resource record (SRV RR) [RFC2782].  The service name is
   "_dvbservdsc", the protocol may be tcp or udp, while the rest of the
   name is the domain name maintained by DVB for service discovery.

McRoberts & Adolf      Expires September 27, 2012              [Page 15]
Internet-Draft                URIs for DVB                    March 2012

   This domain name is set to "services.dvb.org".  So the lookup shall
   be either "_dvbservdsc._tcp.services.dvb.org" or
   "_dvbservdsc._udp.services.dvb.org".  This requires that the terminal
   support an SRV cognizant DNS client and according to the
   specification in [RFC2782].  The DVB organization will maintain the
   services.dvb.org domain name for service discovery.  HTTP servers
   will be found via the tcp protocol method whilst the multicast
   addresses will be found via the udp protocol method.

2.4.  Rights to Use Trademarks

   Conforming to section 7.4 of [RFC3978], the DVB Project who is the
   holder of various trademark and logo rights amongst others but not
   limited to the term "dvb", hereby grants IETF a perpetual license to
   use any such trademarks or service marks solely in exercising its
   rights to reproduce, publish and modify this IETF contribution.  This
   license does not authorize any IETF participant to use any trademark
   or service mark in connection with any product or service offering,
   but only in the context of IETF Documents and discussions.

2.5.  Examples

   These examples make heavy use of the identifiers defined by DVB to
   identify entities.  Please see Section 1 for an explanation of the
   concepts.

2.5.1.  Referring to transport streams and services

   In the below examples, a receiver uses the identifiers in the URI to
   search its internal database of radio frequencies and modulation
   parameters, which it built during a service scan run.  It uses the
   identifiers as keys to look up in the various tables.

   dvb://233a.1041
      The DVB transport stream multiplex with id 0x1041 and with
      original network id 0x233a.  This might be used by a broadcaster
      to provide an entry point to its service offering, without picking
      out any of his services in particular.

   dvb://233a.1041.10bf
      The DVB service with id 0x10bf in the DVB transport stream with id
      0x1041 and with original network id 0x233a.  This could be used as
      the link behind a "watch this now" button.

   dvb://233a..10bf
      The DVB service with id 0x10bf and with original network id
      0x233a.  This could be used as the link behind a "watch this now"
      button.  Note that compared to the previous example the transport

McRoberts & Adolf      Expires September 27, 2012              [Page 16]
Internet-Draft                URIs for DVB                    March 2012

      stream id is omitted.  This is possible in areas where
      [DVB-SI-GDL] is applicable.

   dvb://'MetroTV'
      The DVB service named "MetroTV".  Note that as opposed to the
      previous example, the reference to the service's name is not
      necessarily unambiguous and requires more contextual information
      to be resolved.  For "speaking" or "promotional" URIs, [DVB-TVA]
      might be a more general alternative.

2.5.2.  Referring to service components

   In addition to referring to a TV/radio programme as a whole, it might
   be desirable to be able to pick out specific variations of audio and
   video provided by a programme.  One could for instance always be
   interested in the video with open signing, or in the audio for the
   visually impaired.

   dvb://233a.1041.10bf.audio=fra
      The default video stream and the French language audio stream in
      the indicated DVB service.

   dvb://233a.1041.10bf.audio=qaa&subtitles=eng
      The default video stream, the original language audio stream, and
      the English language subtitle stream in the indicated DVB service.

   dvb://233a.1041.10bf.video=default&audio=visually_impaired  The
      default video stream and the audio stream for the visually
      impaired in the indicated DVB service.

   dvb://233a.1041.10bf.fqc=50B,3&fqc=640,5,fra  The HD video stream
      (stream_content 0x5 and component_type 0x0B) with component_tag 3,
      and the French language ("fra") HE.AAC audio for the visually
      impaired (stream_content 0x6 and component_type 0x40) with
      component_tag 5.

2.5.3.  References for triggering

   Applications might want to trigger on the start and/or end of TV/
   radio programmes.  The user might e.g. have set a flag on the
   programme, so that the receiver will remind him when it begins, or
   might even automatically switch to the respective service when the
   programme begins, and back to the previous service whe it is over.
   Or a user might have selected a programme for recording.  These
   scenarios require that an application has some notion of the start
   and end times of TV/radio programmes.

   Creating accurate recordings of broadcast content is a non-trivial

McRoberts & Adolf      Expires September 27, 2012              [Page 17]
Internet-Draft                URIs for DVB                    March 2012

   task.  For a wider discussion of this, please see [DVB-TVA].
   Although individual service components can be selected for recording,
   all components of the service should generally be recorded where
   appropriate.  This would for instance enable to use the original
   language audio instead of the dubbed version on special playback
   occasions.

   dvb://233a.1004.1044;8fff
      Event with id 0x8fff within the indicated DVB service.  A receiver
      would look up the EPG information for the given service, and for
      the indicated event within that service.  The EPG information will
      contain the wall-clock start time and duration of the programme as
      published e.g. also in print.  Since the actual times of
      transmission may be different, triggers should only be fired with
      appropriate lead-in and lead-out times relative to the published
      EPG times.  Receivers can also use additional information in the
      EPG, in particular the running_status.  Not all broadcasters do
      however manage the running_status reliably or in real-time.

   dvb://233a.1004.1044.audio=fra;8fff  French audio version of the
      event with id 0x8fff within the indicated DVB service.  The video
      would also be implied if it is a TV service.  See also previous
      example.

   dvb://233a.1004.1044;8fff~20100706T000315Z--PT00H31M17S
      Event with id 0x8fff within the indicated DVB service, starting at
      00 hours, 03 minutes and 15 seconds UTC on July, 6th, 2010,
      lasting for 00 hours, 31 minutes and 17 seconds.  This form of the
      URI can be used to convey more accurate transmission times for the
      content.  The programme may be advertised as starting at 00:00 and
      ending at 00:30 in the EPG.  This extended information in the
      locator can be used to get a much more accurate trigger for the
      programme.  The lead-in and lead-out times can be reduced to the
      minimum needed to account for the skews of the local and
      broadcaster clocks.

2.5.4.  Referring to data objects

   [DVB-DATA] defines - among other things - an object carousel which
   can be mounted as a file system.  The data for this object carousel
   is transmitted repeatedly.

   dvb://233a.1041.10bf/doc/form.pdf
      File in a subdirectory of an object carousel, for which the root
      object is carried in the default object carousel of the referenced
      DVB service.

McRoberts & Adolf      Expires September 27, 2012              [Page 18]
Internet-Draft                URIs for DVB                    March 2012

   dvb:/image.png
      File in root directory of an object carousel, for which the root
      object is carried in the default object carousel of the current
      service.

   dvb://233a..10bf.3$10a1240f/doc/form.pdf
      File in a subdirectory of an object carousel, for which the root
      object has the transaction id 10a1240f and is carried in the ES
      with component_tag 3 of the referenced DVB service.  Note that
      compared to the first example the transport stream id is omitted.
      This is possible in areas where [DVB-SI-GDL] is applicable.

2.5.5.  References used with interactive applications

   [DVB-MHP] defines - among other things - how interactive applications
   can make use of audiovisual or other multimedia services and service
   components.

   dvb://233a.1041.10bf.ait/1a2f.23b0?arg_1=Everest&arg_2=Kilimanjaro
      Reference to the application with id 23b0, published by the
      organisation with id 1a2f, as advertised in the AIT which is
      transmitetd as part of the service identified by 233a.1041.10bf.
      In case the application were to be launched, it should be passed
      two arguments; the first argument is "Everest", and the second
      argument is "Kilimanjaro".

   dvb://current
      The service currently selected by the Java Xlet via the
      javax.tv.service.selection package.

McRoberts & Adolf      Expires September 27, 2012              [Page 19]
Internet-Draft                URIs for DVB                    March 2012

3.  IANA Considerations

   This specification requests the IANA permanently register the "dvb"
   URI scheme as specified in this document and summarized in the
   following template, per [BCP115]:

3.1.  DVB Registration Template

   URI scheme name:  dvb

   Status:  Permanent

   URI scheme syntax:  See Section 2.

   URI scheme semantics:  See Section 2.

   Encoding considerations:  Conformance with RFC3986, no special
      considerations.

   Applications/protocols that use this URI scheme name:  dvb URIs are
      used throughout DVB-compliant broadcasting systems, for example
      within Freeview and Freesat in the United Kingdom.  They are also
      used in TV-Anytime [TV-Anytime] metadata where it relates to
      services transmitted by DVB systems.

   Interoperability considerations:  None.

   Security considerations:  See Section 3.2.

   Contact:

      Name:  Mr. Alexander Adolf

      Title:  Chair - DVB TM-GBS working group

      Affiliation:  Condition-ALPHA Digital Broadcast Technology

      Address:  Gabelsbergerstrasse 60b, 80333 Muenchen, GERMANY

      Phone:  +4915112722124

      Email:  alexander.adolf@me.com

   Author/Change controller:

McRoberts & Adolf      Expires September 27, 2012              [Page 20]
Internet-Draft                URIs for DVB                    March 2012

      Name:  Mr. Peter Siebert

      Title:  Executive Director

      Affiliation:  DVB Project

      Address:  17a Ancienne Route, 1218 Grand-Sacconnex, SWITZERLAND

      Phone:  +41227172717

      Email:  siebert@dvb.org

3.2.  Security Considerations

   Section 7 of [RFC3986] describes general security considerations for
   URI schemes.  The sections relating to reliability and consistency,
   malicious construction, back-end transcoding, rare IP address formats
   and semantic attacks all apply to dvb URIs.  The section relating to
   sensitive information does not apply, given that dvb URIs do not
   contain authentication information.

   The security considerations of the Digital Video Broadcasting suite
   of standards in general are not covered in this document.

McRoberts & Adolf      Expires September 27, 2012              [Page 21]
Internet-Draft                URIs for DVB                    March 2012

4.  References

4.1.  Normative References

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", RFC 3986,
              January 2005.

   [RFC5234]  Crocker, D. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 5234, January 2008.

   [RFC3978]  Bradner, S., "IETF Rights in Contributions", RFC 3978,
              March 2005.

   [DVB-URI]  DVB Project, "Digital Video Broadcasting (DVB); Uniform
              Resource Identifiers (URI) for DVB Systems", ETSI TS 102
              851, <http://www.etsi.org/deliver/etsi_ts/102800_102899/
              102851/01.01.01_60/ts_102851v010101p.pdf>.

4.2.  Informative References

   [BT.1306]  International Telecommunication Union, "Error-correction,
              data framing, modulation and emission methods for digital
              terrestrial television broadcasting", ITU-R BT.1306,
              October 2000.

   [BO.1516]  International Telecommunication Union, "Digital
              multiprogramme television systems for use by satellites
              operating in the 11/12 GHz frequency range", ITU-
              R BO.1516, April 2001.

   [J.83]     International Telecommunication Union, "Digital multi-
              programme systems for television, sound and data services
              for cable distribution", ITU-T J.83, April 1997.

   [MPEG-Systems]
              Society of Motion Picture and Television Engineers,
              "Information technology -- Generic coding of moving
              pictures and associated audio information: Systems", ISO/
              IEC 13818-1, December 2000.

   [DVB]      "DVB Project", <http://www.dvb.org/>.

   [DVB-SVCS]
              "DVB Services Sarl", <http://www.dvbservices.com/>.

   [TV-Anytime]
              "TV-Anytime Forum", <http://www.tv-anytime.org/>.

McRoberts & Adolf      Expires September 27, 2012              [Page 22]
Internet-Draft                URIs for DVB                    March 2012

   [RFC2782]  Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for
              specifying the location of services (DNS SRV)", RFC 2782,
              February 2000.

   [DVB-IPTV]
              DVB Project, "Digital Video Broadcasting (DVB); Transport
              of MPEG-2 TS Based DVB Services over IP Based Networks",
              ETSI TS 102 034, <http://www.etsi.org/deliver/etsi_ts/
              102000_102099/102034/01.04.01_60/ts_102034v010401p.pdf>.

   [DVB-TVA]  DVB Project, "Digital Video Broadcasting (DVB); Carriage
              and signalling of TV-Anytime information in DVB transport
              streams", ETSI TS 102 323, <http://www.etsi.org/deliver/
              etsi_ts/102300_102399/102323/01.04.01_60/
              ts_102323v010401p.pdf>.

   [DVB-MHP]  DVB Project, "Digital Video Broadcasting (DVB); Multimedia
              Home Platform (MHP) Specification 1.1.1", ETSI TS 102 812,
              <http://www.etsi.org/deliver/etsi_ts/102800_102899/102812/
              01.02.02_60/ts_102812v010202p.pdf>.

   [DVB-SI-SPEC]
              DVB Project, "Digital Video Broadcasting (DVB);
              Specification for Service Information (SI) in DVB
              systems", ETSI EN 300 468, <http://www.etsi.org/deliver/
              etsi_en/300400_300499/300468/01.11.01_60/
              en_300468v011101p.pdf>.

   [DVB-SI-GDL]
              DVB Project, "Digital Video Broadcasting (DVB); Guidelines
              on implementation and usage of Service Information (SI)",
              ETSI TS 101 211, <http://www.etsi.org/deliver/etsi_tr/
              101200_101299/101211/01.09.01_60/tr_101211v010901p.pdf>.

   [DVB-DATA]
              DVB Project, "Digital Video Broadcasting (DVB); DVB
              specification for data broadcasting", ETSI EN 301 192, <ht
              tp://www.etsi.org/deliver/etsi_en/301100_301199/301192/
              01.04.02_60/en_301192v010402p.pdf>.

   [OCAP1.0]  CableLabs, "OpenCable Application Platform (OCAP)
              specification, I16", OCAP OC-SP-OCAP1.0-I16-050803.

   [BCP115]   Hansen, T., Hardie, T., and L. Masinter, "Guidelines and
              Registration Procedures for New URI Schemes", RFC 4395,
              BCP 115, February 2006.

McRoberts & Adolf      Expires September 27, 2012              [Page 23]
Internet-Draft                URIs for DVB                    March 2012

URIs

   [1]  <http://www.dvbservices.com/>

McRoberts & Adolf      Expires September 27, 2012              [Page 24]
Internet-Draft                URIs for DVB                    March 2012

Authors' Addresses

   Mo McRoberts (editor)
   British Broadcasting Corportation

   Email: mo.mcroberts@bbc.co.uk
   URI:   http://www.bbc.co.uk/

   Alexander Adolf
   Condition-ALPHA
   Gabelsbergerstrasse 60b
   Munich  80333
   GERMANY

   Email: alexander.adolf@me.com
   URI:   http://www.condition-alpha.com

McRoberts & Adolf      Expires September 27, 2012              [Page 25]