RE: DTV and ATSC URL proposal from GI

Philipp asked me to resend this in a text format for easier commenting so
here it is.

	Petr

----------------------------------------------------------------------------
------------------------
Source: General Instrument

URL References for Broadcast DTV Objects
HTML pages that are placed into a data carousel in a broadcast multiplex may
include hypertext links.  When used on the Internet, the HREF attribute
within a hypertext anchor (A) element identifies the target object of the
link in the form of a Uniform Resource Locator.  When a page is broadcast,
however, the receiver may or may not have access to a network or to the
Internet.  For those cases where the target object is present on the same or
another broadcast data carousel, an alternative form for the URL is
necessary.
1.	dtv URL Scheme for Digital Broadcast Television
A new URL scheme called dtv is proposed.  The scheme is designed to be
"uniform" across ATSC and DVB broadcasts, and may be used to reference any
of the following types of objects:
	1.	A specific Transport Stream (digital) or (for ATSC analog) a
specific analog NTSC signal that includes the EIA-752 Transmission Signal ID
VBI tag 
	2.	A specific service (MPEG-2 program) within a specific MPEG-2
Transport Stream 
	3.	A specific elementary stream component within a specific
service within a specific MPEG-2 Transport Stream
	4.	A specific object within a DSM-CC data carousel carried
within a specific elementary stream component within a specific service
within a specific MPEG-2 Transport Stream
	5.	A specific program event within a specific service within a
specific MPEG-2 Transport Stream
A dtv URL takes the general form:
		dtv:<netID>/<TSID>/<svcID>/<part>/<eventID>;<filepath>/<...>
Some parts of the URL may be excluded, as described below.  These include
<netID> and <eventID>.  The URL may be truncated at various points as well.
For example, if all parts following <TSID> are omitted, the URL references
an MPEG-2 Transport Stream.  If parts following <svcID> are excluded, the
URL references an MPEG-2 service.  If parts following the <eventID> are left
off, the URL references a program event.
<netID> identifies the entity that has assigned the value for Transport
Stream ID (TSID).  All values of TSID within a given network are unique.  In
many cases (such as digital broadcast television in the US, or the case of
digital multiplexes on one cable system), all MPEG-2 Transport Streams
accessible to a receiver are part of one network, and the netID field has no
intrinsic value.  For those cases, the netID field may be omitted.  In other
environments such  as DVB, network_ID provides the context for the TSID, so
netID would specify network_ID.  For DVB, the network_ID assignments are
defined in ETR 162.  If included, the 16-bit value is represented as four
ASCII-hex characters.
<TSID> is the MPEG-2 Transport Stream ID (TSID) associated with the MPEG
transport carrying the DSM-CC carousel in which the object resides.  For
analog broadcasts in the US, TSID can refer to the Transmission Signal ID
(see EIA-752).  The 16-bit value is represented as four ASCII-hex
characters.
If the dtv URL references a transport stream or analog NTSC signal, no
further parameters beyond TSID are required.
<svcID> is the MPEG-2 program_number within the multiplex indicated by TSID
in which the carousel containing the data object may be found.  For DVB
services, the DVB service_ID value is specified for svcID. The 16-bit value
is represented as four ASCII-hex characters.
If the dtv URL references an entire MPEG-2 service, no further parameters
beyond svcID are required.
<part> is a parameter that indicates whether the target object is the
service as a whole, or one MPEG-2 elementary stream component within the
target service.  Using the part, the URL may reference one audio, video,
data, or other type of stream within the service.  For DVB, the
identification of a given elementary stream component may be given by its
component_tag, which is defined in a stream_identifier_descriptor() carrying
in the service's Program Map Table.  The "part" may be identified in the
following ways (see a later section for specification of exact syntax):
		svc - indicates that the whole service is targeted
		component_ID - the 8-bit component_ID tag associated with
the elementary stream component
		stream_type - the 8-bit MPEG-2 stream_type value is
represented as two ASCII-hex characters.  Values for stream_type are defined
in MPEG-2 Systems, ISO/IEC 13818-1.
		carousel_ID - the DSM-CC carousel_ID is represented as four
ASCII-hex characters.
		audio - the audio stream.   The ISO-679 language code may be
indicated when multilingual audio streams are included in the service,.  If
no language is indicated, the first (or only) audio stream listed in the PMT
is chosen.  If there are multiple streams of the same language, and a stream
other than the first is targeted, the stream must be selected using its
component ID tag.  
		video - the video stream.  If multiple video streams are
present in the service, the first video stream listed in the PMT is chosen.
If multiple video streams are included, and a stream other than the first is
targeted, the stream must be targeted using its component ID.
		data - the data stream.  If multiple data streams are
present in the service, the first data stream listed in the PMT is chosen.
If multiple data streams are included, and a stream other than the first is
targeted, the stream must be targeted using its component ID.
<eventID>  The eventID is an optional parameter that may be used to target a
program event via a reference to its event_ID.  In DVB SI, event_ID values
are specified to be unique within the scope of one service.  In ATSC SI, the
scope is currently more limited (to one EIT); extension of the scope is
recommended to match DVB.  The 16-bit (14-bit for ATSC) value is represented
as four ASCII-hex characters.  If eventID is omitted, the object should be
accessed at the present time.  If present, that object should be accessed at
or within the timeframe indicated within the EIT referenced by the event_ID.
If parts following the <eventID> are left off, the URL references a program
event for the service or service component.
<filepath>  For dtv URLs that reference DSM-CC streams, filepath may specify
a file path to the referenced object within the carousel.  
<...>  Optional parameters following the file path specification.
		1.1	BNF Specification of dtv URL Scheme
In BNF format (per RFC 822), the syntax for the dtv URL scheme is defined as
follows.  hpath is defined in RFC 1738.
dtvurl= 
"dtv:" [ netID ] "/" TSID [ "/" svcID [ "/" part [ "/" [ eventID ] [ ";"
file ]]]]
		netID	= 4hex
		TSID	= 4hex
		svcID	= 4hex
		part	= svc | component | stream | carousel | audio |
video | data
		svc	= "svc" 
		component	= "tag=" 2hex		; component_tag
		stream	= "stream=" 2hex		; MPEG-2 stream_type
		carousel	= "carousel=" 8hex		; DSM-CC
carouselID
		audio	= "audio" [ "=" langcode ]
		langcode	= 3lowalpha			; per
ISO-679/B.2
		video	= "video"
		data	= "data"	
		file	= hpath 
		1.2	Examples of dtv URL Scheme
Example dtv URLs are:
	1.	dtv URLs targeting Transport Streams:
		dtv:f091/1234	; Network ID 0xF091 is  specified; TSID is
0x1234
		dtv:/E9AB	; Network ID not specified; TSID is 0xE9AB
	2.	dtv URL targeting analog NTSC signals:
		dtv:/99a0	; Network ID not specified; analog TSID is
0x99A0
	3.	dtv URLs targeting a service:
		dtv:f091/1234/009F	; Network ID 0xF091; TSID 0x1234; 
			; program_number 0x009F
		dtv:/E9AB/009F	; Network ID not specified; TSID is 0xE9AB
			; program_number 0x009F
	4.	dtv URLs targeting an elementary stream component:
	dtv:f091/1234/009F/tag=01	; Network ID 0xF091 is  specified; 
		; TSID is 0x1234 
		; program_number 0x009F; 
		; component_tag is 0x01
	dtv:/1234/009F/stream=01	; Network ID not  specified; TSID is
0x1234 
		  program_number 0x009F; stream_type 0x01 is
		; ISO/IEC 11172 video
	dtv:/1234/009F/carousel=0005EE01	; Same service; carousel ID
0x0005EE01
	dtv:/1234/009F/audio	; Same service as above; only or first audio

		; component selected
	dtv:/1234/009F/audio=fre	; Same service as above, French
audio  
		; component selected
	dtv:/1234/009F/video	; Same service as above, only or first video
		;  component selected
	dtv:/1234/009F/data	; Same service as above, only or first data
		;  component selected
	5.	dtv URLs targeting a program event:
	dtv:f091/1234/009F/tag=01/3044	; Network ID 0xF091 is  specified; 
		; TSID is 0x1234 
		; program_number 0x009F; 
		; component_tag is 0x01
		; event_ID is 0x3044
	dtv:f091/1234/009F/svc/3044	; Same program as above; 
		; whole service specified
		; event_ID is 0x3044

	6.	dtv URLs targeting a named object inside a DSM-CC carousel:
		dtv:f091/1234/009F/tag=01/4006;main/img/a.jpg
			; Network ID = 0xF091
			; TSID = 0x1234
			; program_number = 0x009F;
			; component_tag = 0x01
			; event ID = 0x4006
			; filename is "main/img/a.jpg"
		dtv:f091/1234/009F/tag=01/;main/img/a.jpg	
			; Same; no event ID specified
		dtv:f091/1234/009F/svc/;main/img/a.jpg	; Same; whole
service specified
		dtv:/1234/009F/svc/;main/img/a.jpg	; Same; network not
specified
2.	ATSC URL Scheme for Digital Broadcast Television
A second new URL scheme called atsc is proposed.  The atsc scheme is
specific to the ATSC digital television system in that it uses that system's
notion of source_ID to reference a single MPEG-2 service.  ATSC System
Information is built around the concept of Virtual Channel Tables (VCTs).
Each entry in the VCT defines one user-selectable analog or digital service,
and identifies it by its name, user channel number, physical location
(frequency, Transport Stream ID, and [for digital services] MPEG_2 program
number), and its source ID.
A source ID in the range 0x0000 to 0x0FFF is guaranteed unique within one
MPEG-2 Transport Stream.  Source ID values 0x1000 and above are unique on a
regional or network level.  For example, all known broadcast and cable
service providers in North America have been assigned a unique source ID
value for use with the ATSC PSIP (A/65) [1] standard.
A source ID is a logical reference for a given programming service. Use of
source ID is preferable to a physical reference to a service because it is
invariant even as the service moves from one physical place to another.  For
example, a cable headend may re-multiplex digital transports, adding
services while deleting others.  Even after such transformation, the source
ID stays constant, and hence references to services via their source IDs
need not be changed.
The atsc scheme may be used to reference any of the following types of
objects:
	1.	A specific service (MPEG-2 program) within a specific MPEG-2
Transport Stream.
	2.	A specific elementary stream component within a specific
service within a specific MPEG-2 Transport Stream.
	3.	A specific object within a DSM-CC data carousel carried
within a specific elementary stream component within a specific service
within a specific MPEG-2 Transport Stream.
	4.	A specific program event within a specific service within a
specific MPEG-2 Transport Stream.
An atsc URL takes the general form:
		atsc:<sourceID>/<part>/<eventID>;<filepath>/<...>
The <eventID> portion may be excluded, as described below.  The URL may be
truncated at various points as well.  For example, if all parts following
<sourceID> are omitted, the URL references one MPEG-2 service.  If parts
following the <eventID> are left off, the URL references a program event.
<sourceID>  The sourceID parameter provides the ATSC source_ID as defined in
A/65 [1], represented as four hex characters.
If the atsc URL references an entire MPEG-2 service, no further parameters
beyond sourceID are required.
The definitions of <part>, <eventID>, and <filepath> are all the same as was
defined for the dtv URL scheme.  If <eventID> is excluded, the whole service
is selected, not just a single program event.
		2.1	BNF Specification of atsc URL Scheme
In BNF format (per RFC 822), the syntax for the atsc URL scheme is defined
as follows.  hpath is defined in RFC 1738.
atscurl= 
"atsc:" sourceID [ "/" part [ "/" [ eventID ] [ ";" file ]]]
		sourceID	= 4hex
		part	= svc | component | stream | carousel | audio |
video | data
		svc	= "svc" 
		component	= "tag=" 2hex		; component_tag
		stream	= "stream=" 2hex		; MPEG-2 stream_type
		carousel	= "carousel=" 8hex		; DSM-CC
carouselID
		audio	= "audio" [ "=" langcode ]
		langcode	= 3lowalpha			; per
ISO-679/B.2
		video	= "video"
		data	= "data"	
		file	= hpath 
		2.2	Examples of atsc URL Scheme
	1.	atsc URL targeting an ATSC service:
		atsc:1004	; source ID is 0x1004
	2.	atsc URLs targeting an elementary stream component:
	atsc:1004/tag=01	; source ID is 0x1004;
		; component_tag is 0x01
	atsc:1004/stream=01	; source ID is 0x1004; 
		; stream_type 0x01 is ISO/IEC 11172 video
	atsc:1004/carousel=0005EE01	; Same service; carousel ID
0x0005EE01
	atsc:1004/audio	; Same service as above; only or first audio 
		; component selected
	atsc:1004/audio=fre	; Same service as above, French audio  
		; component selected
	atsc:1004/video	; Same service as above, only or first video
		;  component selected
	atsc:1004/data	; Same service as above, only or first data
		;  component selected
	3.	atsc URLs targeting a program event:
	atsc:1004/tag=01/3044	; Source ID 0x1004 is  specified; 
		; component_tag is 0x01
		; event_ID is 0x3044
	atsc:1004/svc/3044	; Same program as above; 
		; whole service specified
		; event_ID is 0x3044
	4.	atsc URLs targeting a named object inside a DSM-CC carousel:
		atsc:1004/tag=01/4006;main/img/a.jpg	; Source ID 0x1004
is  specified;
			; component_tag = 0x01
			; event ID = 0x4006
			; filename is "main/img/a.jpg"
		atsc:1004/tag=01/;main/img/a.jpg	; Same; no event ID
specified
		atsc:1004/svc/;main/img/a.jpg	; Same; whole service
specified
3.	Document References
	1.	ATSC A/65, Program and System Information Protocol for
Terrestrial Broadcast and Cable, December 1997.



> -----Original Message-----
> From:	Peterka, Petr (SD-EX) 
> Sent:	Friday, October 09, 1998 2:41 PM
> To:	www-tv@w3.org
> Subject:	URL: DTV and ATSC URL proposal from GI
> 
> 
> Here is a proposal of a URL, actually 2 URLs: 
> 1. Generic DTV URL which can cover both ATSC as well as DVB transport
> streams
> 2. ATSC specific URL which takes advantage of ATSC specific features such
> as PSIP. 
> 
> This still needs some work, especially the mapping to the transport stream
> components (events, carousels, applications, etc.).
> 
> 	Petr
> 
>  << File: T3S8252.DOC >> 
> ________________________________
> Petr Peterka
> Sr. Staff Engineer, Advanced Technology
> General Instrument, San Diego
> (619) 404 2689
> ppeterka@gi.com
> 
> -----Original Message-----
> 	From:	djz@corp.webtv.net [SMTP:djz@corp.webtv.net]
> 	Sent:	Friday, October 09, 1998 1:24 PM
> 	To:	'Philipp Hoschka'; www-tv@w3.org
> 	Subject:	URL: Getting started
> 
> 	I've volunteered to take a stab at writing a document on TV-oriented
> URL
> 	schemes.  I happen to be already working on a revision to my
> original
> 	IETF Internet-Draft on "tv:", so the timing works out well to bring
> this
> 	into the interest group.
> 
> 	It sounds to me like there's probably more than one URL scheme
> needed
> 	anyway: there's a generic URL for TV broadcasts that is transport
> 	independent (like "tv:") and then there are probably several
> 	transport-specific schemes (like "dvb:").  The first is more like a
> 	resource name than a locator (describing a given broadcast stream,
> 	rather than explaining where to find it), whereas the second class
> of
> 	schemes are true resource locators.
> 
> 	Since my old "tv:" URL draft has expired, I've put it up on our
> local
> 	Web site at
> http://www.microsoft.com/dtv/draft-zigmond-tv-url-00.txt.
> 	This was just an early draft, so understand that I'm not proposing
> this
> 	as the final answer for us.  But I hope it helps get the discussion
> 	going.
> 
> 		Dan
> 
> 
> 	---------------------------------------------------
> 	Dan Zigmond
> 	Co-Manager, Interactive Television
> 	Senior Manager, Interactive Television Standards
> 	WebTV Networks, Inc.
> 	djz@corp.webtv.net
> 	---------------------------------------------------
> 
> 
> 	-----Original Message-----
> 	From: Philipp Hoschka [mailto:ph@w3.org]
> 	Sent: Friday, October 09, 1998 1:12 PM
> 	To: www-tv@w3.org
> 	Subject: Getting started
> 
> 
> 
> 	In the immediate future, we need to address the following
> 	discussion items from
> 
> 	http://www.w3.org/TV/TVWeb
> 
> 	1) Document on TV-specific requirements on CSS
> 	2) Document on "tv" URL-scheme
> 
> 	The page already lists a number of people that have
> 	expressed interest to do the work required here.
> 	It also lists the current status that I'm aware of, e.g.
> 	which documents already exist.
> 
> 	To get started, I guess the best way to procede is
> 	for one or more of the people listed as "workers" for
> 	each topic to come up with strawman proposal(s) on these
> 	topics, and send them to this list. To distinguish between
> 	the two topics, please put "URL:" or "CSS:" at the beginning
> 	of the subject line.
> 
> 	The page also lists a discussion item on a "Document on
> 	TV-specific requirements on HTML". My feeling is that
> 	this has been a bit overtaken by events since the IG proposal
> 	was written, since different groups have already started to work on
> 	this (see page for details)
> 
> 	If there are no objections, I would thus like to change
> 	this work item into reviewing eventual working
> 	drafts coming out of these groups on whether they meet the
> 	TV-specific requirements they claim to address,
> 	rather than writing our own requirements document.
> 	However, I'm open to suggestions.
> 
> 	-Philipp Hoschka, W3C
> 
> 	
> ----------------------------------------------------------------------
> 	   Philipp Hoschka                  |
> 	   http://www.w3.org/people/hoschka |
> 					    |   World Wide Web Consortium
> 					    |   MIT-LCS
> 	   ph@w3.org                        |   545, Technology Square
> 	   Tel:(+1) 617.258.0604            |   Cambridge, MA 02139
> 	   Fax:(+1) 617.258.5999            |   USA
> 	
> ----------------------------------------------------------------------

Received on Wednesday, 14 October 1998 14:40:25 UTC