[html5] r1793 - [] (0) Define 'valid URL' as an IRI reference and 'valid absolute URL' as an abs [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Jun 23 18:00:17 PDT 2008


Author: ianh
Date: 2008-06-23 18:00:16 -0700 (Mon, 23 Jun 2008)
New Revision: 1793

Modified:
   index
   source
Log:
[] (0) Define 'valid URL' as an IRI reference and 'valid absolute URL' as an absolute IRI.

Modified: index
===================================================================
--- index	2008-06-24 00:23:35 UTC (rev 1792)
+++ index	2008-06-24 01:00:16 UTC (rev 1793)
@@ -216,7 +216,16 @@
        <li><a href="#terminology0"><span class=secno>2.3.1
         </span>Terminology</a>
 
-       <li><a href="#interfaces"><span class=secno>2.3.2 </span>Interfaces
+       <li><a href="#parsing0"><span class=secno>2.3.2 </span>Parsing
+        URLs</a>
+
+       <li><a href="#resolving"><span class=secno>2.3.3 </span>Resolving
+        URLs</a>
+
+       <li><a href="#open-issues"><span class=secno>2.3.4 </span>Open
+        issues</a>
+
+       <li><a href="#interfaces"><span class=secno>2.3.5 </span>Interfaces
         for URI manipulation</a>
       </ul>
 
@@ -1167,7 +1176,7 @@
          <li><a href="#writing"><span class=secno>5.7.3.1. </span>Writing
           cache manifests</a>
 
-         <li><a href="#parsing0"><span class=secno>5.7.3.2. </span>Parsing
+         <li><a href="#parsing1"><span class=secno>5.7.3.2. </span>Parsing
           cache manifests</a>
         </ul>
 
@@ -1546,7 +1555,7 @@
        <li><a href="#connecting"><span class=secno>7.2.2 </span>Connecting to
         an event stream</a>
 
-       <li><a href="#parsing1"><span class=secno>7.2.3 </span>Parsing an
+       <li><a href="#parsing2"><span class=secno>7.2.3 </span>Parsing an
         event stream</a>
 
        <li><a href="#event-stream-interpretation"><span class=secno>7.2.4
@@ -1805,7 +1814,7 @@
      <li><a href="#serializing"><span class=secno>9.4 </span>Serializing HTML
       fragments</a>
 
-     <li><a href="#parsing2"><span class=secno>9.5 </span>Parsing HTML
+     <li><a href="#parsing3"><span class=secno>9.5 </span>Parsing HTML
       fragments</a>
 
      <li><a href="#named"><span class=secno>9.6 </span>Named character
@@ -2702,72 +2711,74 @@
 
   <ul>
    <li>
-    <p>The <a href="#url">URL</a> is a valid URI.
+    <p>The <a href="#url">URL</a> is a valid URI reference <a
+     href="#refsRFC3986">[RFC3986]</a>.
 
    <li>
-    <p>The <a href="#url">URL</a> is a valid IRI and it has no query
-     component.
+    <p>The <a href="#url">URL</a> is a valid IRI reference and it has no
+     query component. <a href="#refsRFC3987">[RFC3987]</a>
 
    <li>
-    <p>The <a href="#url">URL</a> is a valid IRI and its query component
-     contains no unescaped non-ASCII characters.
+    <p>The <a href="#url">URL</a> is a valid IRI reference and its query
+     component contains no unescaped non-ASCII characters. <a
+     href="#refsRFC3987">[RFC3987]</a>
 
    <li>
-    <p>The <a href="#url">URL</a> is a valid IRI and the <a
+    <p>The <a href="#url">URL</a> is a valid IRI reference and the <a
      href="#character1" title="document's character encoding">character
-     encoding</a> of the URL's <code>Document</code> is UTF-8.
+     encoding</a> of the URL's <code>Document</code> is UTF-8. <a
+     href="#refsRFC3987">[RFC3987]</a>
   </ul>
 
+  <p>A <a href="#url">URL</a> is a <dfn id=valid0>valid absolute URL</dfn> if
+   it is a <a href="#valid">valid URL</a> and has an absolute form. <a
+   href="#refsRFC3986">[RFC3986]</a> <a href="#refsRFC3987">[RFC3987]</a>
+
+  <h4 id=parsing0><span class=secno>2.3.2 </span>Parsing URLs</h4>
+
+  <p class=big-issue>...
+
+  <h4 id=resolving><span class=secno>2.3.3 </span>Resolving URLs</h4>
+
   <div class=big-issue>
-   <p>This section will do the following:</p>
+   <p>First parse it (we need to define that. For some schemes it's not per
+    spec -- e.g. apparently for ftp: we should split from hosts on ';'). Then
+    handle each bit as follows:</p>
 
-   <ul>
-    <li>define URL as IRI and replace all uses of URIs and IRIs in the rest
-     of the spec with URL
+   <p>scheme: no further processing (treat %-escaped characters literally,
+    treat unicode characters as unicode characters).</p>
 
-    <li>define "valid URL" in terms of valid URIs and IRIs and replace that
-     concept through the spec to a pointer here, getting rid of references to
-     <a href="#refsRFC3986">[RFC3986]</a> <a
-     href="#refsRFC3987">[RFC3987]</a> outside this section
+   <p>host: expand %-encoded bytes to Unicode as UTF-8, treat unicode
+    characters as per IDN.</p>
 
-    <li>define "valid URL reference" in terms of valid URI references and IRI
-     references and replace that concept through the spec to a pointer here,
-     getting rid of references to <a href="#refsRFC3986">[RFC3986]</a> <a
-     href="#refsRFC3987">[RFC3987]</a> outside this section
+   <p>path: don't expand %-encoded bytes. Re-encode unicode to UTF-8 and
+    percent-encode.</p>
 
-    <li>define how to parse URLs (maybe by deferring to RFCs)
+   <p>query: don't expand %-encoded bytes. Re-encode unicode to the page's
+    encoding. Do not percent-encode.</p>
+  </div>
 
-    <li>
-     <p>define how to handle URIs that contain non-ascii characters (and it's
-      not the same as handling as IRIs, especially if the character encoding
-      of the document isn't UTF-8)</p>
+  <p class=big-issue>define what it means to resolve a relative URL when the
+   base URL doesn't have a path hierarchy (e.g. data:, javascript:,
+   about:blank URLs)
 
-     <p>First parse it (we need to define that. For some schemes it's not per
-      spec -- e.g. apparently for ftp: we should split from hosts on ';').
-      Then handle each bit as follows:</p>
+  <h4 id=open-issues><span class=secno>2.3.4 </span>Open issues</h4>
 
-     <p>scheme: no further processing (treat %-escaped characters literally,
-      treat unicode characters as unicode characters).</p>
+  <div class=big-issue>
+   <p>This section will do the following:</p>
 
-     <p>host: expand %-encoded bytes to Unicode as UTF-8, treat unicode
-      characters as per IDN.</p>
+   <ul>
+    <li>replace all uses of URIs and IRIs in the rest of the spec with URL
 
-     <p>path: don't expand %-encoded bytes. Re-encode unicode to UTF-8 and
-      percent-encode.</p>
+    <li>get rid of references to <a href="#refsRFC3986">[RFC3986]</a> <a
+     href="#refsRFC3987">[RFC3987]</a> outside this section
 
-     <p>query: don't expand %-encoded bytes. Re-encode unicode to the page's
-      encoding. Do not percent-encode.</p>
-
     <li>define how to resolve relative URLs in markup attributes (using
      XMLBase as defined elsewhere right now)
 
     <li>define how to resolve relative URLs in APIs, using the <dfn
      id=scripts>script's base URI</dfn> maybe
 
-    <li>define what it means to resolve a relative URL when the base URL
-     doesn't have a path hierarchy (e.g. data:, javascript:, about:blank
-     URLs)
-
     <li>define "an <dfn id=elements3>element's base URI</dfn>" and make the
      various places that talk about a base URI in the context of an element
      use that definition
@@ -2822,7 +2833,7 @@
   </div>
   <!-- XXXURL change to URL -->
 
-  <h4 id=interfaces><span class=secno>2.3.2 </span>Interfaces for URI
+  <h4 id=interfaces><span class=secno>2.3.5 </span>Interfaces for URI
    manipulation</h4>
   <!-- XXXURL change to URL -->
 
@@ -3115,7 +3126,7 @@
 
   <h5 id=unsigned><span class=secno>2.4.3.1. </span>Unsigned integers</h5>
 
-  <p>A string is a <dfn id=valid0>valid non-negative integer</dfn> if it
+  <p>A string is a <dfn id=valid1>valid non-negative integer</dfn> if it
    consists of one of more characters in the range U+0030 DIGIT ZERO (0) to
    U+0039 DIGIT NINE (9).
 
@@ -3176,7 +3187,7 @@
 
   <h5 id=signed><span class=secno>2.4.3.2. </span>Signed integers</h5>
 
-  <p>A string is a <dfn id=valid1>valid integer</dfn> if it consists of one
+  <p>A string is a <dfn id=valid2>valid integer</dfn> if it consists of one
    of more characters in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE
    (9), optionally prefixed with a U+002D HYPHEN-MINUS ("-") character.
 
@@ -3254,7 +3265,7 @@
 
   <h5 id=real-numbers><span class=secno>2.4.3.3. </span>Real numbers</h5>
 
-  <p>A string is a <dfn id=valid2>valid floating point number</dfn> if it
+  <p>A string is a <dfn id=valid3>valid floating point number</dfn> if it
    consists of one of more characters in the range U+0030 DIGIT ZERO (0) to
    U+0039 DIGIT NINE (9), optionally with a single U+002E FULL STOP (".")
    character somewhere (either before these numbers, in between two numbers,
@@ -3380,7 +3391,7 @@
    <code><a href="#progress">progress</a></code> and <code><a
    href="#meter">meter</a></code> elements.
 
-  <p>A <dfn id=valid3>valid denominator punctuation character</dfn> is one of
+  <p>A <dfn id=valid4>valid denominator punctuation character</dfn> is one of
    the characters from the table below. There is <dfn id=a-value
    title="values associated with denominator punctuation characters">a value
    associated with each denominator punctuation character</dfn>, as shown in
@@ -3458,7 +3469,7 @@
     href="#refsUNICODE">[UNICODE]</a>
 
    <li>If there are still further characters in the string, and the next
-    character in the string is a <a href="#valid3">valid denominator
+    character in the string is a <a href="#valid4">valid denominator
     punctuation character</a>, set <var title="">denominator</var> to that
     character.
 
@@ -3481,7 +3492,7 @@
     sub-algorithm in step 9.
 
    <li>If there are still further characters in the string, and the next
-    character in the string is a <a href="#valid3">valid denominator
+    character in the string is a <a href="#valid4">valid denominator
     punctuation character</a>, return nothing and abort these steps.
 
    <li>If the string contains any other characters in the range U+0030 DIGIT
@@ -3516,7 +3527,7 @@
    <li>Parse <var title="">string</var> according to the <a
     href="#rules1">rules for parsing floating point number values</a>, to
     obtain <var title="">number</var>. This step cannot fail (<var
-    title="">string</var> is guaranteed to be a <a href="#valid2">valid
+    title="">string</var> is guaranteed to be a <a href="#valid3">valid
     floating point number</a>).
 
    <li>Return <var title="">number</var>.
@@ -3525,15 +3536,15 @@
   <h5 id=percentages-and-dimensions><span class=secno>2.4.3.5.
    </span>Percentages and dimensions</h5>
 
-  <p class=big-issue><dfn id=valid4>valid positive non-zero integers</dfn>
+  <p class=big-issue><dfn id=valid5>valid positive non-zero integers</dfn>
    <dfn id=rules2>rules for parsing dimension values</dfn> (only used by
    height/width on img, embed, object — lengths in css pixels or
    percentages)
 
   <h5 id=lists><span class=secno>2.4.3.6. </span>Lists of integers</h5>
 
-  <p>A <dfn id=valid5>valid list of integers</dfn> is a number of <a
-   href="#valid1" title="valid integer">valid integers</a> separated by
+  <p>A <dfn id=valid6>valid list of integers</dfn> is a number of <a
+   href="#valid2" title="valid integer">valid integers</a> separated by
    U+002C COMMA characters, with no other characters (e.g. no <a
    href="#space" title="space character">space characters</a>). In addition,
    there might be restrictions on the number of integers that can be given,
@@ -3824,7 +3835,7 @@
 
   <h5 id=specific><span class=secno>2.4.4.1. </span>Specific moments in time</h5>
 
-  <p>A string is a <dfn id=valid6>valid datetime</dfn> if it has four digits
+  <p>A string is a <dfn id=valid7>valid datetime</dfn> if it has four digits
    (representing the year), a literal hyphen, two digits (representing the
    month), a literal hyphen, two digits (representing the day), optionally
    some spaces, either a literal T or a space, optionally some more spaces,
@@ -3857,7 +3868,7 @@
    U+002B PLUS SIGN, and the minus U+002D (same as the hyphen).
 
   <div class=example>
-   <p>The following are some examples of dates written as <a href="#valid6"
+   <p>The following are some examples of dates written as <a href="#valid7"
     title="valid datetime">valid datetimes</a>.</p>
 
    <dl>
@@ -3910,7 +3921,7 @@
    user agent must apply the following algorithm to the string. This will
    either return a time in UTC, with associated timezone information for
    round tripping or display purposes, or nothing, indicating the value is
-   not a <a href="#valid6">valid datetime</a>. If at any point the algorithm
+   not a <a href="#valid7">valid datetime</a>. If at any point the algorithm
    says that it "fails", this means that it returns nothing.
 
   <ol>
@@ -4522,7 +4533,7 @@
 
   <h4 id=time-offsets><span class=secno>2.4.5 </span>Time offsets</h4>
 
-  <p class=big-issue><dfn id=valid7>valid time offset</dfn>, <dfn
+  <p class=big-issue><dfn id=valid8>valid time offset</dfn>, <dfn
    id=rules4>rules for parsing time offsets</dfn>, <dfn id=time-offset>time
    offset serialization rules</dfn>; in the format "5d4h3m2s1ms" or "3m 9.2s"
    or "00:00:00.00" or similar.
@@ -4719,7 +4730,7 @@
 
   <h4 id=syntax-references><span class=secno>2.4.8 </span>References</h4>
 
-  <p>A <dfn id=valid8>valid hash-name reference</dfn> to an element of type
+  <p>A <dfn id=valid9>valid hash-name reference</dfn> to an element of type
    <var title="">type</var> is a string consisting of a U+0023 NUMBER SIGN
    (<code title="">#</code>) character followed by a string which exactly
    matches the value of the <code title="">name</code> attribute of an
@@ -4815,7 +4826,7 @@
    the attribute is absent, then the default value must be returned instead,
    or 0 if there is no default value. On setting, the given value must be
    converted to the shortest possible string representing the number as a <a
-   href="#valid1">valid integer</a> in base ten and then that string must be
+   href="#valid2">valid integer</a> in base ten and then that string must be
    used as the new content attribute value.
 
   <p>If a reflecting DOM attribute is an <em>unsigned</em> integer type
@@ -4826,7 +4837,7 @@
    hand, it fails, or if the attribute is absent, the default value must be
    returned instead, or 0 if there is no default value. On setting, the given
    value must be converted to the shortest possible string representing the
-   number as a <a href="#valid0">valid non-negative integer</a> in base ten
+   number as a <a href="#valid1">valid non-negative integer</a> in base ten
    and then that string must be used as the new content attribute value.
 
   <p>If a reflecting DOM attribute is an unsigned integer type
@@ -4841,7 +4852,7 @@
    value. On setting, if the value is zero, the user agent must fire an
    <code>INDEX_SIZE_ERR</code> exception. Otherwise, the given value must be
    converted to the shortest possible string representing the number as a <a
-   href="#valid0">valid non-negative integer</a> in base ten and then that
+   href="#valid1">valid non-negative integer</a> in base ten and then that
    string must be used as the new content attribute value.
 
   <p>If a reflecting DOM attribute is a floating point number type
@@ -4866,7 +4877,7 @@
    other hand, it fails, or if the attribute is absent, the default value
    must be returned instead, or 0.0 if there is no default value. On setting,
    the given value must be converted to the shortest possible string
-   representing the number as a <a href="#valid2">valid floating point
+   representing the number as a <a href="#valid3">valid floating point
    number</a> in base ten and then that string must be used as the new
    content attribute value.
 
@@ -8569,7 +8580,7 @@
    the first are ignored.
 
   <p>The <dfn id=target title=attr-base-target><code>target</code></dfn>
-   attribute, if specified, must contain a <a href="#valid10">valid browsing
+   attribute, if specified, must contain a <a href="#valid11">valid browsing
    context name or keyword</a>. User agents use this name when <a
    href="#following0">following hyperlinks</a>.
 
@@ -9442,9 +9453,9 @@
      attribute must have a value consisting either of:
 
     <ul>
-     <li> just a <a href="#valid0">valid non-negative integer</a>, or
+     <li> just a <a href="#valid1">valid non-negative integer</a>, or
 
-     <li> a <a href="#valid0">valid non-negative integer</a>, followed by a
+     <li> a <a href="#valid1">valid non-negative integer</a>, followed by a
       U+003B SEMICOLON (<code title="">;</code>), followed by one or more <a
       href="#space" title="space character">space characters</a>, followed by
       either a U+0055 LATIN CAPITAL LETTER U or a U+0075 LATIN SMALL LETTER
@@ -11302,7 +11313,7 @@
    attribute is omitted, the list is an ascending list (1, 2, 3, ...).
 
   <p>The <dfn id=start0 title=attr-ol-start><code>start</code></dfn>
-   attribute, if present, must be a <a href="#valid1">valid integer</a>
+   attribute, if present, must be a <a href="#valid2">valid integer</a>
    giving the ordinal value of the first list item.
 
   <p>If the <code title=attr-ol-start><a href="#start0">start</a></code>
@@ -11487,7 +11498,7 @@
    element.
 
   <p>The <dfn id=value title=attr-li-value><code>value</code></dfn>
-   attribute, if present, must be a <a href="#valid1">valid integer</a>
+   attribute, if present, must be a <a href="#valid2">valid integer</a>
    giving the ordinal value of the list item.
 
   <p>If the <code title=attr-li-value><a href="#value">value</a></code>
@@ -12944,7 +12955,7 @@
   <p><strong>Author requirements</strong>: The <code
    title=attr-progress-max><a href="#max">max</a></code> and <code
    title=attr-progress-value><a href="#value1">value</a></code> attributes,
-   when present, must have values that are <a href="#valid2" title="valid
+   when present, must have values that are <a href="#valid3" title="valid
    floating point number">valid floating point numbers</a>. The <code
    title=attr-progress-max><a href="#max">max</a></code> attribute, if
    present, must have a value greater than zero. The <code
@@ -13159,7 +13170,7 @@
    title=attr-meter-max><a href="#max1">max</a></code>, and <code
    title=attr-meter-optimum><a href="#optimum">optimum</a></code> attributes
    are all optional. When present, they must have values that are <a
-   href="#valid2" title="valid floating point number">valid floating point
+   href="#valid3" title="valid floating point number">valid floating point
    numbers</a>, and their values must satisfy the following inequalities:
 
   <ul class=brief>
@@ -14422,14 +14433,14 @@
 
   <p>If present, the <code title=attr-mod-datetime><a
    href="#datetime1">datetime</a></code> attribute must be a <a
-   href="#valid6">valid datetime</a> value.
+   href="#valid7">valid datetime</a> value.
 
   <p>User agents must parse the <code title=attr-mod-datetime><a
    href="#datetime1">datetime</a></code> attribute according to the <a
    href="#datetime-parser">parse a string as a datetime value</a> algorithm.
    If that doesn't return a time, then the modification has no associated
    timestamp (the value is non-conforming; it is not a <a
-   href="#valid6">valid datetime</a>). Otherwise, the modification is marked
+   href="#valid7">valid datetime</a>). Otherwise, the modification is marked
    as having been made at the given datetime. User agents should use the
    associated timezone information to determine which timezone to present the
    given datetime in.
@@ -15442,7 +15453,7 @@
    will remain at the initial <code>about:blank</code><!-- XXX xref --> page.
 
   <p>The <dfn id=name1 title=attr-iframe-name><code>name</code></dfn>
-   attribute, if present, must be a <a href="#valid9">valid browsing context
+   attribute, if present, must be a <a href="#valid10">valid browsing context
    name</a>. When the browsing context is created, if the attribute is
    present, the <a href="#browsing2">browsing context name</a> must be set to
    the value of this attribute; otherwise, the <a href="#browsing2">browsing
@@ -16001,7 +16012,7 @@
    href="#type6">type</a></code> attributes must be present.
 
   <p>The <dfn id=name3 title=attr-object-name><code>name</code></dfn>
-   attribute, if present, must be a <a href="#valid9">valid browsing context
+   attribute, if present, must be a <a href="#valid10">valid browsing context
    name</a>.
 
   <p>When the element is created, and subsequently whenever the <code
@@ -16946,7 +16957,7 @@
    allows the author to specify the pixel ratio of anamorphic <a
    href="#media10" title="media resource">media resources</a> that do not
    self-describe their pixel ratio. The attribute value, if specified, must
-   be a <a href="#valid2">valid floating point number</a> giving the ratio of
+   be a <a href="#valid3">valid floating point number</a> giving the ratio of
    the correct rendered width of each pixel to the actual width of each pixel
    in the image (i.e., the multiple by which the video's intrinsic width is
    to be multiplied to obtain the rendered width that gives the correct
@@ -19332,7 +19343,7 @@
    to control the size of the coordinate space: <dfn id=width0
    title=attr-canvas-width><code>width</code></dfn> and <dfn id=height0
    title=attr-canvas-height><code>height</code></dfn>. These attributes, when
-   specified, must have values that are <a href="#valid0" title="valid
+   specified, must have values that are <a href="#valid1" title="valid
    non-negative integer">valid non-negative integers</a>. The <a
    href="#rules">rules for parsing non-negative integers</a> must be used to
    obtain their numeric values. If an attribute is missing, or if parsing its
@@ -22096,7 +22107,7 @@
    href="#rectangle" title=attr-area-shape-rect>rectangle</a> state.
 
   <p>The <dfn id=coords title=attr-area-coords><code>coords</code></dfn>
-   attribute must, if specified, contain a <a href="#valid5">valid list of
+   attribute must, if specified, contain a <a href="#valid6">valid list of
    integers</a>. This attribute gives the coordinates for the shape described
    by the <code title=attr-area-shape><a href="#shape">shape</a></code>
    attribute. The processing for this attribute is described as part of the
@@ -22226,7 +22237,7 @@
    <code><a href="#img">img</a></code> or <code><a
    href="#object">object</a></code> element. The <code
    title=attr-area-usemap>usemap</code> attribute, if specified, must be a <a
-   href="#valid8">valid hash-name reference</a> to a <code><a
+   href="#valid9">valid hash-name reference</a> to a <code><a
    href="#map">map</a></code> element.
 
   <p>If an <code><a href="#img">img</a></code> element or an <code><a
@@ -22548,7 +22559,7 @@
    give the dimensions of the visual content of the element (the width and
    height respectively, relative to the nominal direction of the output
    medium), in CSS pixels. The attributes, if specified, must have values
-   that are <a href="#valid4">valid positive non-zero integers</a>.
+   that are <a href="#valid5">valid positive non-zero integers</a>.
 
   <p>The specified dimensions given may differ from the dimensions specified
    in the resource itself, since the resource may have a resolution that
@@ -22961,7 +22972,7 @@
   <p>If the <code><a href="#colgroup">colgroup</a></code> element contains no
    <code><a href="#col">col</a></code> elements, then the element may have a
    <dfn id=span0 title=attr-colgroup-span><code>span</code></dfn> content
-   attribute specified, whose value must be a <a href="#valid0">valid
+   attribute specified, whose value must be a <a href="#valid1">valid
    non-negative integer</a> greater than zero.
 
   <p>The <code><a href="#colgroup">colgroup</a></code> element and its <code
@@ -23015,7 +23026,7 @@
 
   <p>The element may have a <dfn id=span2
    title=attr-col-span><code>span</code></dfn> content attribute specified,
-   whose value must be a <a href="#valid0">valid non-negative integer</a>
+   whose value must be a <a href="#valid1">valid non-negative integer</a>
    greater than zero.
 
   <p>The <code><a href="#col">col</a></code> element and its <code
@@ -23488,13 +23499,13 @@
   <p>The <code><a href="#td">td</a></code> and <code><a
    href="#th">th</a></code> elements may have a <dfn id=colspan
    title=attr-tdth-colspan><code>colspan</code></dfn> content attribute
-   specified, whose value must be a <a href="#valid0">valid non-negative
+   specified, whose value must be a <a href="#valid1">valid non-negative
    integer</a> greater than zero.
 
   <p>The <code><a href="#td">td</a></code> and <code><a
    href="#th">th</a></code> elements may also have a <dfn id=rowspan
    title=attr-tdth-rowspan><code>rowspan</code></dfn> content attribute
-   specified, whose value must be a <a href="#valid0">valid non-negative
+   specified, whose value must be a <a href="#valid1">valid non-negative
    integer</a>.
 
   <p>The <code><a href="#td">td</a></code> and <code><a
@@ -29727,12 +29738,13 @@
    name</dfn>. By default, a browsing context has no name (its name is not
    set).
 
-  <p>A <dfn id=valid9>valid browsing context name</dfn> is any string with at
-   least one character that does not start with a U+005F LOW LINE character.
-   (Names starting with an underscore are reserved for special keywords.)
+  <p>A <dfn id=valid10>valid browsing context name</dfn> is any string with
+   at least one character that does not start with a U+005F LOW LINE
+   character. (Names starting with an underscore are reserved for special
+   keywords.)
 
-  <p>A <dfn id=valid10>valid browsing context name or keyword</dfn> is any
-   string that is either a <a href="#valid9">valid browsing context name</a>
+  <p>A <dfn id=valid11>valid browsing context name or keyword</dfn> is any
+   string that is either a <a href="#valid10">valid browsing context name</a>
    or that case-insensitively <!-- ASCII --> matches one of: <code
    title="">_blank</code>, <code title="">_self</code>, <code
    title="">_parent</code>, or <code title="">_top</code>.
@@ -30032,7 +30044,7 @@
 
   <p>The second argument, <var title="">target</var>, specifies the <a
    href="#browsing2" title="browsing context name">name</a> of the browsing
-   context that is to be navigated. It must be a <a href="#valid10">valid
+   context that is to be navigated. It must be a <a href="#valid11">valid
    browsing context name or keyword</a>. If fewer than two arguments are
    provided, then the <var title="">name</var> argument defaults to the value
    "<code>_blank</code>".
@@ -32309,7 +32321,7 @@
 
   <p>URIs in manifests must not have fragment identifiers.
 
-  <h5 id=parsing0><span class=secno>5.7.3.2. </span>Parsing cache manifests</h5>
+  <h5 id=parsing1><span class=secno>5.7.3.2. </span>Parsing cache manifests</h5>
 
   <p>When a user agent is to <dfn id=parse0>parse a manifest</dfn>, it means
    that the user agent must run the following steps:
@@ -36038,7 +36050,7 @@
 
   <p>The <dfn id=target3
    title=attr-hyperlink-target><code>target</code></dfn> attribute, if
-   present, must be a <a href="#valid10">valid browsing context name or
+   present, must be a <a href="#valid11">valid browsing context name or
    keyword</a>. User agents use this name when <a
    href="#following0">following hyperlinks</a>.</p>
   <!-- XXXURL change to URL -->
@@ -36895,7 +36907,7 @@
    href="#unordered">unordered set of unique space-separated tokens</a>. The
    values must all be either <code title=attr-link-sizes-any><a
    href="#any">any</a></code> or a value that consists of two <a
-   href="#valid0" title="valid non-negative integer">valid non-negative
+   href="#valid1" title="valid non-negative integer">valid non-negative
    integers</a> that do not have a leading U+0030 DIGIT ZERO (0) character
    and that are separated by a single U+0078 LATIN SMALL LETTER X character.
 
@@ -37670,7 +37682,7 @@
 
   <p>The <code title=attr-tabindex><a href="#tabindex">tabindex</a></code>
    attribute, if specified, must have a value that is a <a
-   href="#valid1">valid integer</a>.
+   href="#valid2">valid integer</a>.
 
   <p>If the attribute is specified, it must be parsed using the <a
    href="#rules0">rules for parsing integers</a>. The attribute's values have
@@ -40654,7 +40666,7 @@
 
   <p>For non-HTTP protocols, UAs should act in equivalent ways.
 
-  <h4 id=parsing1><span class=secno>7.2.3 </span>Parsing an event stream</h4>
+  <h4 id=parsing2><span class=secno>7.2.3 </span>Parsing an event stream</h4>
 
   <p>This event stream format's MIME type is <code>text/event-stream</code>.
 
@@ -49806,7 +49818,7 @@
    element's <span title=syntax-start-tag>start tag</span> would imply the
    end tag for the <code><a href="#p">p</a></code>).
 
-  <h3 id=parsing2><span class=secno>9.5 </span>Parsing HTML fragments</h3>
+  <h3 id=parsing3><span class=secno>9.5 </span>Parsing HTML fragments</h3>
 
   <p>The following steps form the <dfn id=html-fragment0>HTML fragment
    parsing algorithm</dfn>. The algorithm takes as input a DOM

Modified: source
===================================================================
--- source	2008-06-24 00:23:35 UTC (rev 1792)
+++ source	2008-06-24 01:00:16 UTC (rev 1793)
@@ -963,69 +963,70 @@
 
   <ul>
 
-   <li><p>The <span>URL</span> is a valid URI.</p></li>
+   <li><p>The <span>URL</span> is a valid URI reference <a
+   href="#refsRFC3986">[RFC3986]</a>.</p></li>
 
-   <li><p>The <span>URL</span> is a valid IRI and it has no query
-   component.</p></li>
+   <li><p>The <span>URL</span> is a valid IRI reference and it has no
+   query component. <a href="#refsRFC3987">[RFC3987]</a></p></li>
 
-   <li><p>The <span>URL</span> is a valid IRI and its query component
-   contains no unescaped non-ASCII characters.</p></li>
+   <li><p>The <span>URL</span> is a valid IRI reference and its query
+   component contains no unescaped non-ASCII characters. <a
+   href="#refsRFC3987">[RFC3987]</a></p></li>
 
-   <li><p>The <span>URL</span> is a valid IRI and the <span
+   <li><p>The <span>URL</span> is a valid IRI reference and the <span
    title="document's character encoding">character encoding</span> of
-   the URL's <code>Document</code> is UTF-8.</p></li>
+   the URL's <code>Document</code> is UTF-8. <a
+   href="#refsRFC3987">[RFC3987]</a></p></li>
 
   </ul>
 
+  <p>A <span>URL</span> is a <dfn>valid absolute URL</dfn> if it is a
+  <span>valid URL</span> and has an absolute form. <a
+  href="#refsRFC3986">[RFC3986]</a> <a
+  href="#refsRFC3987">[RFC3987]</a></p>
 
-  <div class="big-issue">
 
-   <p>This section will do the following:</p>
+  <h4>Parsing URLs</h4>
 
-   <ul>
+  <p class="big-issue">...</p>
 
-    <li>define URL as IRI and replace all uses of URIs and IRIs in the
-    rest of the spec with URL</li>
+  <h4>Resolving URLs</h4>
 
-    <li>define "valid URL" in terms of valid URIs and IRIs and replace
-    that concept through the spec to a pointer here, getting rid of
-    references to <a href="#refsRFC3986">[RFC3986]</a> <a
-    href="#refsRFC3987">[RFC3987]</a> outside this section</li>
+  <div class="big-issue">
+   <p>First parse it (we need to define that. For some schemes it's
+   not per spec -- e.g. apparently for ftp: we should split from
+   hosts on ';'). Then handle each bit as follows:</p>
+   <p>scheme: no further processing (treat %-escaped characters literally, treat unicode characters as unicode characters).</p>
+   <p>host: expand %-encoded bytes to Unicode as UTF-8, treat unicode characters as per IDN.</p>
+   <p>path: don't expand %-encoded bytes. Re-encode unicode to UTF-8 and percent-encode.</p>
+   <p>query: don't expand %-encoded bytes. Re-encode unicode to the page's encoding. Do not percent-encode.</p>
+  </div>
 
-    <li>define "valid URL reference" in terms of valid URI references
-    and IRI references and replace that concept through the spec to a
-    pointer here, getting rid of references to <a
-    href="#refsRFC3986">[RFC3986]</a> <a
-    href="#refsRFC3987">[RFC3987]</a> outside this section</li>
+  <p class="big-issue">define what it means to resolve a relative URL
+  when the base URL doesn't have a path hierarchy (e.g. data:,
+  javascript:, about:blank URLs)</p>
 
-    <li>define how to parse URLs (maybe by deferring to RFCs)</li>
 
-    <li>
+  <h4>Open issues</h4>
 
-     <p>define how to handle URIs that contain non-ascii characters
-     (and it's not the same as handling as IRIs, especially if the
-     character encoding of the document isn't UTF-8)</p>
+  <div class="big-issue">
 
-     <p>First parse it (we need to define that. For some schemes it's
-     not per spec -- e.g. apparently for ftp: we should split from
-     hosts on ';'). Then handle each bit as follows:</p>
-     <p>scheme: no further processing (treat %-escaped characters literally, treat unicode characters as unicode characters).</p>
-     <p>host: expand %-encoded bytes to Unicode as UTF-8, treat unicode characters as per IDN.</p>
-     <p>path: don't expand %-encoded bytes. Re-encode unicode to UTF-8 and percent-encode.</p>
-     <p>query: don't expand %-encoded bytes. Re-encode unicode to the page's encoding. Do not percent-encode.</p>
+   <p>This section will do the following:</p>
 
-    </li>
+   <ul>
 
+    <li>replace all uses of URIs and IRIs in the rest of the spec with
+    URL</li>
+
+    <li>get rid of references to <a href="#refsRFC3986">[RFC3986]</a>
+    <a href="#refsRFC3987">[RFC3987]</a> outside this section</li>
+
     <li>define how to resolve relative URLs in markup attributes
     (using XMLBase as defined elsewhere right now)</li>
 
     <li>define how to resolve relative URLs in APIs, using the
     <dfn>script's base URI</dfn> maybe</li>
 
-    <li>define what it means to resolve a relative URL when the base
-    URL doesn't have a path hierarchy (e.g. data:, javascript:,
-    about:blank URLs)</li>
-
     <li>define "an <dfn>element's base URI</dfn>" and make the various
     places that talk about a base URI in the context of an element use
     that definition</li>




More information about the Commit-Watchers mailing list