<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<rfc ipr="full2026">
  <front>
    <title abbrev="Time intervals in URIs">Specifying time intervals in URI queries and fragments of time-based Web resources (BCP)</title>

    <author initials="S.P." surname="Pfeiffer" fullname="Silvia Pfeiffer">
        <organization abbrev="CSIRO">Commonwealth Scientific and
        Industrial Research Organisation CSIRO,
        Australia</organization>
        <address>
           <postal>
              <street>Locked Bag 17</street>
              <city>North Ryde</city>
              <region>NSW</region>
              <code>2113</code>
              <country>Australia</country>
           </postal>
           <phone>+61 2 9325 3141</phone>
           <email>Silvia.Pfeiffer@csiro.au</email>
           <uri>http://www.cmis.csiro.au/Silvia.Pfeiffer/</uri>
        </address>
    </author>

    <author initials="C.D.P." surname="Parker" fullname="Conrad D. Parker">
        <organization abbrev="CSIRO">Commonwealth Scientific and
        Industrial Research Organisation CSIRO,
        Australia</organization>
        <address>
           <postal>
              <street>Locked Bag 17</street>
              <city>North Ryde</city>
              <region>NSW</region>
              <code>2113</code>
              <country>Australia</country>
           </postal>
           <phone>+61 2 9325 3133</phone>
           <email>Conrad.Parker@csiro.au</email>
           <uri>http://www.cmis.csiro.au/Conrad.Parker/</uri>
        </address>
    </author>

    <author initials="A.T." surname="Pang" fullname="Andre T. Pang">
        <organization abbrev="CSIRO">Commonwealth Scientific and
        Industrial Research Organisation CSIRO,
        Australia</organization>
        <address>
           <postal>
              <street>Locked Bag 17</street>
              <city>North Ryde</city>
              <region>NSW</region>
              <code>2113</code>
              <country>Australia</country>
           </postal>
           <phone>+61 2 9325 3156</phone>
           <email>Andre.Pang@csiro.au</email>
           <uri>http://www.ict.csiro.au/</uri>
        </address>
    </author>

    <date month="December" year="2003"/>

    <abstract>
      <t>This document specifies a syntax for addressing time
      intervals within time-based Web resources through URI
      queries and fragments. It suggests a Best Current Practice (BCP)
      for any time-based Web resource for which temporal subparts
      may be requested and retrieved. This enables, e.g., direct access 
      to a clip of a video stored on a Web Server, or direct jumps to a
      specific event within a piece of music. The syntax is not 
      restricted to audio or video Web resources, but covers all
      kinds of Web resources that contain time-continuous
      information.
      </t>

      <t>The URI query specification of this syntax implies
      that a Web server is capable to extract the given time
      subsections from the Web resource and serve that as another
      complete Web resource of the same type. Specifying a time point
      or interval through a URI fragment in contrast does not deliver
      a subpart of the Web resource - instead it is up to the
      application and the resource type as to what action is
      invoked. Examples are a fast forward to a time point, or a zoom
      into a time interval.
      </t>

      <t>This document is a proposal for a Best Current Practice. The
      authors strongly encourage anybody interested to explore the
      implementation of the syntax on different types of Web resources
      and contribute any findings. Current implementations work with
      <xref target="ANX">Annodex</xref> and <xref
      target="CMML">CMML</xref> format Web resources over HTTP.
      An implementation over e.g. RTP/RTSP for Internet streaming
      and for other protocols has not been explored yet. The syntax is
      also being explored within the ISO/MPEG standardisation
      body for addressing into MPEG-4 or MPEG-7 format resources.
      Also note that RealNetworks is using an different syntax
      for the query case for RealMedia over RTP/RTSP.
      </t>
      
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
      NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
      "OPTIONAL" in this document are to be interpreted as described
      in <xref target="KEYWORDS">RFC 2119</xref>.
      </t>

    </abstract>

  </front>
  
  <middle>
    
    <!--**************-->
    <!-- INTRODUCTION -->
    <!--**************-->
    <section title="Introduction">
      
      <t>Many resources on the World Wide Web represent information
      that relate to a timeline of events. Time-sampled recordings of
      sound, temporally interleaved audio-visual streams, or data
      files containing time series data are examples. This document
      describes a syntax for addressing temporal offsets and time
      intervals in such resources. The aim is to make it simple to
      incorporate infrastructure into the Web/Internet which supports
      the addressing and retrieval of temporal subparts of time-based
      Web resources, as well as the automated processing of such
      subparts e.g. for reusing them.
      </t>
      
      <t>Files containing commands for creating time-continuous
      experiences (such as SMIL files for authoring interactive
      multimedia, or VRML files for authoring 3D worlds) cannot be
      addressed in this manner - however, if one particular user
      interaction (i.e. one experience) is recorded, the recording
      contains information that relates to a single timeline and can
      be addressed with the manner described in this specification.
      </t>
      
    </section>


    <!--**************-->
    <!-- URI formats  -->
    <!--**************-->
    <section title="Incorporating temporal addressing into the Generic URI Scheme">
      
      <t>The <xref target="URI">Generic URI Scheme</xref> defines two
      manners in which subparts of Web resources can be addressed:
      queries and fragments. Queries are given through extending the
      Web resource's address by a string that is separated through the
      special character "?".  Fragments are given through extending
      the Web resource's address by a string that is separated through
      the special character "#".
      </t>

      <t><xref target="URI">RFC 2396</xref> specifies that URI queries
      identify a resource and thus a Web server has to process the
      query returning a fully defined resource. There is no
      generically defined structure to URI queries. However, the
      format of a CGI query string where name-value pairs are
      separated by the special character "&" is a commonly used
      format. The Common Gateway Interface, or CGI, is a
      standard for external gateway programs to interface with
      information servers such as HTTP servers (see
      http://hoohoo.ncsa.uiuc.edu/cgi/). When defining a common manner 
      in which temporal subparts of a Web resource can be addressed, 
      it is important to be compatible with this common CGI format.
      </t>

      <t><xref target="URI">RFC 2396</xref> also specifies that URI
      fragments identify a secondary resource by reference to a
      primary resource and that fragments get interpreted client side,
      i.e. the Web infrastructure consisting of Web servers and Web
      proxies will generally ignore the "#" extension of URIs. This
      basically implies that a fragment provides a particular view on a
      resource and the view is defined through the type of resource
      and the client side application.
      </t>

      <t>Both, URI query and URI fragment identifiers have
      traditionally been defined for specific media types or even
      specific services. This is especially true for URI queries where
      the query string may consist of name-value pairs that contain
      the particular fields and field entries of a particular form
      that resides on a particular server and gets processed by a
      particular server extension. For the temporal addressing that is
      proposed in this document, it is important that every Web server
      that interpretes the query parameter reacts uniformly to it. The
      particular resources which are covered in this manner are however
      not defined in this document - when a media type gets registered 
      for the Web/Internet, the authors must explicitly define if a Web 
      resource of that media type can be addressed through the time-interval 
      URI addressing scheme defined here.
      </t>
      
    </section>
    

    <!--**************-->
    <!-- Query format -->
    <!--**************-->
    <section title="Temporal addressing through URI queries">

      <t>URI query strings are specified after the special character
      "?".  A temporal query parameter defines one or more intervals
      of time.  Time is given with respect to specific time
      schemes. The default time scheme is "npt" (normal play time), in
      which a time point is specified in seconds through a floating
      point number with an arbitrary temporal resolution. The
      available time schemes and their specifications are described
      further down in this document.
      </t>

      <t>The BNF for a temporal URI query parameter is:
      </t>

      <artwork><![CDATA[
temporal-parameter = "t" "=" [ timescheme ":" ] temporal-intervalspec

temporal-intervalspec = temporal-interval ["," temporal-intervalspec]

temporal-interval = timespec ["-" timespec]

timescheme     = *unreserved

timespec       = *uric
      ]]></artwork>

      <t>All temporal intervals actually specify start and end
      times.  If no end timespec is given, it defaults to infinity,
      which for a file means the end of the file or for a stream the
      end of the stream. Overlapping temporal intervals MUST be
      interpreted by merging the intervals into one.
      </t>

      <t>It is not valid to give several temporal URI query
      parameters.  They all need to be wrapped into a single
      specification.
      </t>

      <t>Examples are:
      </t>

      <list style="symbols">
        <t>http://www.foo.bar/video.anx?t=15.2 --- video.anx
	is transferred from 15.2 seconds into video.anx to the end of
	the file/stream.
	</t>

	<t>http://www.foo.bar/video.anx?t=15.2-18.7 --- video .anx
	is transferred from 15.2 seconds into video.anx to 18.7 seconds.
	</t>

	<t>http://www.foo.bar/video.anx?t=15.2-18.7,23 --- video.anx
	is transferred from 15.2s to 18.7s and from 23s to the end of
	the file/stream.
	</t>

	<t>http://www.foo.bar/video.anx?t=15.2-18.7,17.4-30.1 -- video.anx
	is transferred from 15.2 seconds into video.anx to 30.1 seconds.
	</t>

	<t>http://www.foo.bar/video.anx?t=15.2-18.7&t=23 --- invalid
	query parameters - MUST create an error message.
	</t>
      </list>
	
    </section>


    <!--*****************-->
    <!-- Fragment format -->
    <!--*****************-->
    <section title="Temporal addressing through URI fragments">
      
      <t>URI fragment specifiers are given after the special character
      crosshatch ("#"). A temporal URI fragment defines a specific
      temporal view onto a Web resource consisting of one or more
      intervals of time. Again, time is given with respect to specific
      time schemes as defined below. Again, the default is "npt".
      </t>

      <t>The BNF for a temporal URI fragment identifier is (reusing the
      temporal-intervalspec of the URI query section above):
      </t>

      <artwork><![CDATA[
temporal-fragment = [ timescheme ":" ] temporal-intervalspec
	]]></artwork>
      
      <t>As with temporal URI query parameters, all temporal intervals
      are specified through start and end times, the default end time
      being infinity, which may map to the end of a file or
      stream. Also, several temporal URI fragment identifiers are not
      allowed.
      </t>

      <t>Examples are:
      </t>

      <list style="symbols">
        <t>http://www.foo.bar/video.anx#15.2 --- specifies a view
	on the section between 15.2 seconds into video.anx and the 
	end of the file/stream.
        </t>

        <t>http://www.foo.bar/video.anx#15.2-18.7 --- specifies a view
	on the section between 15.2s and 18.7s of video.anx.
        </t>

        <t>http://www.foo.bar/video.anx#15.2-18.7,23 --- specifies 
	a view on the section between 15.2s and 18.7s, as well as
	23s to the end of the file/stream.
        </t>

	<t>http://www.foo.bar/video.anx#15.2-18.7,17.4-30.1 -- specifies
	a view on the section between 15.2s and 30.1s of video.anx.
	</t>

      </list>

    </section>

    
    <!--**************-->
    <!-- Time schemes -->
    <!--**************-->
    <section title="Time schemes">

      <t>A time scheme is a short identifier for a type of time
      specification. The following general time schemes are specified
      in this document. Further time schemes are expected to emerge
      and should probably be registered through IANA.

	<list style="symbols">
	  <t>"npt" (Normal Play Time; base of seconds as used in the
	  <xref target="RTSP">RTSTP standard</xref>)
	  </t>
	  <t>"smpte" (Society of Motion Picture and Television
	  Engineers time codes as specified in the <xref
	  target="SMPTE">SMPTE time and control code standard</xref>)
	  </t>
	  <t>"utc" (Universal Time Code giving wall-clock time as
	  specified in the <xref target="ISO8601">ISO 8601
	  standard</xref>).
	  </t>
	</list>
      </t>

      <t>Specification as BNF:</t>
      <artwork><![CDATA[
timescheme = npt-timescheme | smpte-timescheme | utc-timescheme
timespec   = npt-timespec | smpte-timespec | utc-timespec
      ]]></artwork>

      <t>Thus, the available time schemes are:
          <list style="empty">

	  <t>NPT time has a second or subsecond resolution. It is
	  specified as H:M:S.h (npt-hhmmss) or S.h (npt-sec), where
	  H=hours, M=minutes, S=second and h=fractions of a
	  second. Negative values are not allowed.
	  </t>

	  <t>Specification as BNF:</t>
      <artwork><![CDATA[
npt-timescheme = "npt"
npt-timespec   =  npt-sec | npt-hhmmss
npt-sec        =   1*DIGIT [ "." *DIGIT ]
npt-hhmmss     =   npt-hh ":" npt-mm ":" npt-ss [ "." *DIGIT ]
npt-hh         =   1*DIGIT
npt-mm         =   1*2DIGIT
npt-ss         =   1*2DIGIT
        ]]></artwork>

	  <t><xref target="SMPTE">SMPTE time codes</xref> are
	  optimized for frame level accuracy.  SMPTE is specified as
	  HH:MM:SS:FF, where HH=hours, MM=minutes, SS=second,
	  FF=frames. The drop-frame algorithms for calculating the
	  exact times can be found in the references SMPTE
	  standard. Negative values are not allowed.
	  </t>

          <t> "smpte-24=" SMPTE time with a 24 fps basis</t>
          <t> "smpte-24-drop=" SMPTE time with a 24/1.001 fps basis</t>
          <t> "smpte-25=" SMPTE time with a 25 fps basis</t>
          <t> "smpte-30=" SMPTE time with a 30 fps basis</t>
          <t> "smpte-30-drop=" SMPTE time with a 30/1.001 fps basis</t>
          <t> "smpte-50=" SMPTE time with a 50 fps basis</t>
          <t> "smpte-60=" SMPTE time with a 60 fps basis</t>
          <t> "smpte-60-drop=" SMPTE time with a 60/1.001 fps basis</t>
	  <t>Specification as BNF:</t>
      <artwork><![CDATA[
smpte-timescheme = "smpte-24" | "smpte-24-drop" | "smpte-25" |
                   "smpte-30" | "smpte-30-drop" | "smpte-50" |
                   "smpte-60" | "smpte-60-drop"
smpte-timespec   = smpte-hh ":" smpte-mm ":" smpte-ss [ ":" *2DIGIT ]
smpte-hh         = 1*2DIGIT
smpte-mm         = 1*2DIGIT
smpte-ss         = 1*2DIGIT
        ]]></artwork>

	  <t>UTC time has a second or subsecond resolution.  It is
	  given as YYYYMMDDTHHmmss.hhZ, where Y=year, M=month, D=day,
	  H=hour, m=minute, s=second, h=subseconds (one-hundredth of a
	  second).
          </t>

	  <t>Specification as BNF:</t>
      <artwork><![CDATA[
utc-timescheme = "clock"
utc-timespec   = utc-date "T" utc-hhmmss "Z"
utc-date       =   8DIGIT
utc-hhmmss     =   6DIGIT [ "." *DIGIT ]
        ]]></artwork>

          </list>
      </t>

      <t>Examples for time-interval URI specifications with different
      time schemes are:</t>
      <figure>
	<artwork><![CDATA[
http://www.foo.bar/audio.anx?t=smpte-25:10:07:33:06-10:07:55:00
  (for a temporal interval between 36453.25s - 36475s)
http://www.foo.bar/audio.anx#npt:10:7:33.25
  (for a temporal interval between 36453.25s and the end of the file/stream)
http://www.foo.bar/audio.anx?t=clock:20021107T173045.25Z
  (for Thu Jul 11 05:30:45 UTC 2002 and a quarter seconds)
	  ]]></artwork>
      </figure>

      <t>The semantic interpretation of time specifications given with
      any of the schemes depends on the resource. With every resource
      there are two associated timebases: a UTC timebase which may
      e.g. specify the creation time of the resource, and a playback
      timebase used for display in a user agent while viewing the
      resource.
      </t>

      <t>The playback timebase of a resource defaults to 0 seconds if
      the resource has no other timebase associated with it. For
      example, with professional video production, the first frame of
      video of a program normally refers to a SMPTE timebase of
      01:00:00:00, not 00:00:00:00.  This practice arose from the
      requirements of program production and analog videotape
      recording technology, and it has subsequently become a uniform,
      almost ironclad practice worldwide. Associating such a practice
      to a digital video resource requires a way to store that
      timebase with the resource, which may or may not be possible,
      depending on the content type of the resource.
      </t>
      
      <t>Examples: If a resource has an associated timebase of 3600
      seconds, and the given temporal fragment offset is 4000 sec, a
      seek time 400 sec into the resource is requested. If the
      timebase is given as clock time 20001010T142211.23Z and the
      temporal offset specified is 20001010T145511.23Z, the time 33
      minutes into the resource is requested.
      </t>

      <t>The UTC timebase of a resource defaults to
      non-specified. Associating such a UTC timebase with a resource
      requires a way to store that timebase with the resource. For
      example, for a resource that is a file on a server, it may be
      chosen to be the time of storage of that resource.
      </t>

      <t>The semantic interpretation of temporal intervals depends on
      the time scheme. Unless specified differently, the temporal
      intervals given are closed intervals, i.e. they start at the
      first time point and finish at the second time point:
      [time_from;time_to]. For SMPTE timecodes, however, it is
      conventional to express such temporal intervals as IN and OUT
      times for editing. Thus, the IN time specifies the first frame
      that is included in the interval and the OUT time specifies the
      first frame that is not included in the interval. Therefore, a
      SMPTE interval is specified as [time_from;time_to[, which
      explains the additional frame in the above example.
      </t>
    </section>


    <!--*******-->
    <!-- Usage -->
    <!--*******-->
    <section title="Intended usage">

      <t>The temporal URI interval specifications are intended to be
      used on resources that represent a specific timeline. An example
      of such resources are most resources of MIME types "audio/*" and
      "video/*".
      </t>

      <t>A retrieval action on a URI that includes a temporal URI
      query parameter MUST result in a time-continuous resource that
      is reduced to the given temporal intervals. As per HTTP
      standard, if the URI including the temporal query parameter
      cannot be resolved by the server, the server has to return a
      "404" error message.  Time-continuous resources often come with
      high bandwidth requirements, so serving out only the queried
      time interval avoids unnecessary network load. For example, a 1
      hour Digital Video (DV format) requires about 25 GB (MPEG-2
      reduces that to about 3 GB). It also ignificantly reduces the
      delay for the user agent for receiving relevant data.
      </t>
      
      <section title="Rollout with HTTP">
        <t>Servers that support the temporal query format MUST
	implement a retrieval action of time-continuous resources with
	such query specifications by serving the requested resource
	from the temporal offset onwards. For many time-continuous
	resources - especially when in compressed format - this means
	that the server has to parse the structure of the resource and
	construct another valid resource from the original resource's
	header information and data frames. If a server cannot perform
	the fragment offset, it MUST return an error as otherwise the
	user agent cannot identify if the offset action was performed or
	not.
	</t>

	<t>It is expected that over time more servers and client
	applications understand and handle the temporal URI query
	parameters and thus enable direct networked access to content in
	time-continuous resources. Also Web proxies may begin to
	understand such temporal offsets and can exploit them for
	caching.
	</t>
      </section>

      <section title="Rollout with RTP/RTSP">
        <t>[TBD]
	</t>
      </section>

    </section>
    

    <!--*************************--> 
    <!-- Security considerations -->
    <!--*************************--> 
    <section title="Security considerations">

      <t>This specification does not create any new security issues
      beyond the ones already specified for URIs in <xref
      target="URI">RFC 2396</xref>.
      </t>

    </section>

    <!--***********--> 
    <!-- Changelog -->
    <!--***********--> 
    <section title="ChangeLog">

      <t>draft-pfeiffer-temporal-fragments-01:
        <list>

	  <t>Extension of the number of available SMPTE
	  time-schemes. Many thanks to Bill Miller and Oliver Morgan
	  of the SMPTE for their input on these changes.
	  </t>

	  <t>Deleted "start" and "now" as time specification values.
	  </t>

	  <t>Extension of the temporal fragment addressing to also
	  address temporal intervals, not only time points.
	  </t>

	  <t>Added section that includes some key points of discussion
	  where the existing URI standard contradicts the use of
	  fragments for time-continuous data.
	  </t>

        </list>
      </t>

      <t>draft-pfeiffer-temporal-fragments-02:
        <list>

	  <t>Full compatibility with existing URI standard
	  specification is achieved by using both, query and 
	  fragment specifications for addressing.
	  </t>

	  <t>Restriction of specification to http scheme (Web) only,
	  as usage on other protocols (such as rtp/rtsp) still
	  needs to be explored.
	  </t>

	  <t>All addressing is interval based because an offset
	  really implies a view onto the document from that point
	  onwards.
	  </t>

        </list>
      </t>

    </section>

  </middle>

  
  <back>
    
    <references>
      
      <reference anchor="KEYWORDS">
	<front>
	  <title>Key words for use in RFCs to Indicate Requirements Levels</title>

	  <author initials="S." surname="Bradner" fullname="Scott Bradner">
	    <organization>Harvard University</organization>
	    <address>
	      <postal>
		<street>29 Oxford Street</street>
		<city>Cambridge</city> <region>MA</region> <code>02138</code>
		<country>US</country>
	      </postal>
	      <phone>+1 617 495 3864</phone>
	      <email>sob@harvard.edu</email>
	    </address>
	  </author>
	  <date month="March" year="1997" />
	</front>
	<seriesInfo name="RFC" value="2119" />
	<seriesInfo name="BCP" value="14" />
      </reference>

      <reference anchor="URI">
	<front>
	  <title>Uniform Resource Identifiers (URI): Generic
	  Syntax</title>
	  <author initials="T." surname="Berners-Lee" fullname="Tim Berners-Lee">
	    <organization abbrev="W3C">World Wide Web Consortium</organization>
	    <address>
	      <postal>
		<street>MIT Laboratory for Computer Science</street>
		<street>545 Technology Square</street>
		<city>Cambridge</city> <region>MA</region> <code>02139</code>
		<country>US</country>
	      </postal>
	      <phone>+1 617 253 5702</phone>
	      <facsimile>+1 617 258 8682</facsimile>
	      <email>timbl@w3.org</email>
	    </address>
	  </author>
	  <author initials="R.T." surname="Fielding" fullname="Roy T. Fielding">
	    <organization abbrev="UCI">University of California, Irvine</organization>
	    <address>
	      <postal>
		<street>Department of Information and Computer Science</street>
		<street>University of California, Irvine</street>
		<city>Irvine</city> <region>CA</region> <code>92697-3425</code>
		<country>US</country>
	      </postal>
	      <phone>+1 949 824 7403</phone>
	      <facsimile>+1 949 824 1715</facsimile>
	      <email>fielding@ics.uci.edu</email>
	    </address>
	  </author>
	  <author initials="L." surname="Masinter" fullname="Larry Masinter">
	    <organization>Xerox PARC</organization>
	    <address>
	      <postal>
		<street>3333 Coyote Hill Road</street>
		<city>Palo Alto</city> <region>CA</region> <code>94304</code>
		<country>US</country>
	      </postal>
	      <phone>+1 650 812 4365</phone>
	      <facsimile>+1 650 812 4333</facsimile>
	      <email>masinter@parc.xerox.com</email>
	    </address>
	  </author>
	  <date month="August" year="1998" />
	</front>
	<seriesInfo name="RFC" value="2396" />
      </reference>
      
      <reference anchor="RTSP">
	<front>
	  <title>Real Time Streaming Protocol (RTSP)</title>
	  <author initials="H." surname="Schulzrinne" fullname="Henning Schulzrinne">
	    <organization abbrev="ColU">Columbia University</organization>
	    <address>
	      <postal>
		<street>Dept. of Computer Science</street>
		<street>1214 Amsterdam Avenue</street>
		<city>New York</city> <region>NY</region> <code>10027</code>
		<country>US</country>
	      </postal>
	      <email>schulzrinne@cs.columbia.edu</email>
	    </address>
	  </author>
	  <author initials="A." surname="Rao" fullname="Anup Rao">
	    <organization abbrev="NS">Netscape Communications Corp.</organization>
	    <address>
	      <postal>
		<street>501 E. Middlefield Road</street>
		<city>Mountain View</city> <region>CA</region> <code>94043</code>
		<country>US</country>
	      </postal>
	      <email>anup@netscape.com</email>
	    </address>
	  </author>
	  <author initials="R." surname="Lanphier" fullname="Robert Lanphier">
	    <organization>RealNetworks</organization>
	    <address>
	      <postal>
		<street>1111 Third Avenue Suite 2900</street>
		<city>Seattle</city> <region>WA</region> <code>98101</code>
		<country>US</country>
	      </postal>
	      <email>robla@real.com</email>
	    </address>
	  </author>
	  <date month="April" year="1998" />
	</front>
	<seriesInfo name="RFC" value="2326" />
      </reference>

      <reference anchor="SMPTE">
	<front>
	  <title>SMPTE STANDARD for Television, Audio and Film - Time and Control Code</title>
	  <author>
	    <organization abbrev="SMPTE"> The Society of Motion Picture and Television Engineers</organization>
	    <address>
	      <postal>
		<street>595 W. Hartsdale Ave.</street>
		<city>White Plains</city> <region>NY</region> <code>10607</code>
		<country>USA</country>
	      </postal>
	      <email>smpte@smpte.org</email>
	    </address>
	  </author>
	  <date month="September" year="1999" />
	</front>
	<seriesInfo name="ANSI" value="12M-1999" />
      </reference>

      <reference anchor="ISO8601">
	<front>
	  <title>Data elements and interchange formats -- Information interchange -- Representation of dates and times</title>
	  <author initials="TC154" surname="ISO" fullname="ISO - Technical Committee TC 154">
	    <organization abbrev="ISO"> International Organization for Standardization</organization>
	    <address>
	      <postal>
		<street>1 rue de Varembre</street>
		<street>Case Postale 56</street>
		<city>Geneva</city> <region>20</region> <code>1211</code>
		<country>CH</country>
	      </postal>
	      <email>central@iso.org</email>
	    </address>
	  </author>
	  <date month="" year="2000" />
	</front>
	<seriesInfo name="ISO" value="8601" />
      </reference>

      <reference anchor="ANX" target="http://www.annodex.net/TR/annodex.txt">
        <front>
	  <title>The Annodex annotation and indexing format for time-continuous data files, Version 2.0 (work in progress)</title>
	  <author initials="S." surname="Pfeiffer" fullname="Silvia Pfeiffer">
	    <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
	    <address>
	      <postal>
		<street>Locked Bag 17</street>
		<city>North Ryde</city> <region>NSW</region> <code>2113</code>
		<country>Australia</country>
	      </postal>
	      <phone>+ 61 2 9325 3100</phone>
	      <facsimile>+ 61 2 9325 3200</facsimile>
	      <email>Silvia.Pfeiffer@csiro.au</email>
	      <uri>http://www.annodex.net</uri>
	    </address>
	  </author>
	  <author initials="C." surname="Parker" fullname="Conrad D. Parker">
	    <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
	    <address>
	      <postal>
		<street>Locked Bag 17</street>
		<city>North Ryde</city> <region>NSW</region> <code>2113</code>
		<country>Australia</country>
	      </postal>
	      <phone>+ 61 2 9325 3100</phone>
	      <facsimile>+ 61 2 9325 3200</facsimile>
	      <email>Conrad.Parker@csiro.au</email>
	      <uri>http://www.annodex.net</uri>
	    </address>
	  </author>
	  <author initials="A." surname="Pang" fullname="Andre T. Pang">
	    <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
	    <address>
	      <postal>
		<street>Locked Bag 17</street>
		<city>North Ryde</city> <region>NSW</region> <code>2113</code>
		<country>Australia</country>
	      </postal>
	      <phone>+ 61 2 9325 3100</phone>
	      <facsimile>+ 61 2 9325 3200</facsimile>
	      <email>Andre.Pang@csiro.au</email>
	      <uri>http://www.annodex.net</uri>
	    </address>
	  </author>
	  <date month="December" year="2003" />
	</front>
	<seriesInfo name="I-D" value="draft-pfeiffer-annodex-01.txt" />
      </reference>

      <reference anchor="CMML" target="http://www.annodex.net/TR/cmml.txt">
        <front>
          <title>The Continuous Media Markup Language (CMML), Version 2.0 (work in progress)</title>
          <author initials="S." surname="Pfeiffer" fullname="Silvia Pfeiffer">
            <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
            <address>
              <postal>
                <street>Locked Bag 17</street>
                <city>North Ryde</city> <region>NSW</region> <code>2113</code>
                <country>Australia</country>
              </postal>
              <phone>+ 61 2 9325 3100</phone>
              <facsimile>+ 61 2 9325 3200</facsimile>
              <email>Silvia.Pfeiffer@csiro.au</email>
              <uri>http://www.annodex.net/</uri>
            </address>
          </author>
          <author initials="C." surname="Parker" fullname="Conrad Parker">
            <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
            <address>
              <postal>
                <street>Locked Bag 17</street>
                <city>North Ryde</city> <region>NSW</region> <code>2113</code>
                <country>Australia</country>
              </postal>
              <phone>+ 61 2 9325 3100</phone>
              <facsimile>+ 61 2 9325 3200</facsimile>
              <email>Conrad.Parker@csiro.au</email>
              <uri>http://www.annodex.net/</uri>
            </address>
          </author>
	  <author initials="A." surname="Pang" fullname="Andre T. Pang">
	    <organization abbrev="CSIRO">Commonwealth Scientific and Industrial Research Organisation</organization>
	    <address>
	      <postal>
		<street>Locked Bag 17</street>
		<city>North Ryde</city> <region>NSW</region> <code>2113</code>
		<country>Australia</country>
	      </postal>
	      <phone>+ 61 2 9325 3100</phone>
	      <facsimile>+ 61 2 9325 3200</facsimile>
	      <email>Andre.Pang@csiro.au</email>
	      <uri>http://www.annodex.net</uri>
	    </address>
	    </author>
          <date month="December" year="2003" />
        </front>
        <seriesInfo name="I-D" value="draft-pfeiffer-cmml-01.txt" />
      </reference>

    </references>
    
    
    <section title="Acknowledgements">
      <t>The authors greatly acknowledge the contributions of Andre
      Pang and Andrew Nesbit in developing this syntax. We also thank
      Bill Miller and Oliver Morgan of the SMPTE for their
      contributions and Dave Singer from Apple Computer Inc. for his.
      </t>

      <t>The many comments on this document from the URI discussion
      group at the W3C (uri@w3.org), especially the comments from
      Larry Masinter, Al Gilman and Martin Duerst and others have
      strongly shaped the current format.
      </t>

      <t>Many thanks also to the Audio/Video Transport working group
      at the IETF (avt@ietf.org), foremost to Magnus Westerlund, for
      picking up the discussion around how to use the scheme on
      RTP/RTSP. This is now not covered in this document, but should
      be explored in the future, possibly in a different document.
      </t>

      <t>Last but not least thanks go to the ISO/MPEG working group
      with whom harmonisation in addressing formats is still pursued -
      thanks to Ian Burnett, Myriam Amielh, Ernest Wan, and Gerrard
      Drury.
      </t>
    </section>
    
  </back>
</rfc>