hixie: make sure the definitions of 'nested browsing context' make sense when you consider that iframes can be removed from a document (whatwg r5699)

hixie: make sure the definitions of 'nested browsing context' make sense
when you consider that iframes can be removed from a document (whatwg
r5699)

http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.4565&r2=1.4566&f=h
http://html5.org/tools/web-apps-tracker?from=5698&to=5699

===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.4565
retrieving revision 1.4566
diff -u -d -r1.4565 -r1.4566
--- Overview.html 2 Dec 2010 04:29:01 -0000 1.4565
+++ Overview.html 2 Dec 2010 07:15:40 -0000 1.4566
@@ -41311,28 +41311,35 @@
   </div><h4 id="nested-browsing-contexts"><span class="secno">5.1.1 </span>Nested browsing contexts</h4><p>Certain elements (for example, <code><a href="#the-iframe-element">iframe</a></code> elements) can
   instantiate further <a href="#browsing-context" title="browsing context">browsing
   contexts</a>. These are called <dfn id="nested-browsing-context" title="nested browsing
-  context">nested browsing contexts</dfn>. If a browsing context <var title="">P</var> has an element <var title="">E</var> in one of its
-  <code><a href="#document">Document</a></code>s <var title="">D</var> that nests another
-  browsing context <var title="">C</var> inside it, then <var title="">P</var> is said to be the <dfn id="parent-browsing-context">parent browsing
-  context</dfn> of <var title="">C</var>, <var title="">C</var> is
-  said to be a <dfn id="child-browsing-context">child browsing context</dfn> of <var title="">P</var>, <var title="">C</var> is said to be <dfn id="browsing-context-nested-through" title="browsing context nested through">nested through</dfn> <var title="">D</var>, and <var title="">E</var> is said to be the
-  <dfn id="browsing-context-container">browsing context container</dfn> of <var title="">C</var>.<p>A browsing context <var title="">A</var> is said to be an
-  ancestor of a browsing context <var title="">B</var> if there exists
-  a browsing context <var title="">A'</var> that is a <a href="#child-browsing-context">child
-  browsing context</a> of <var title="">A</var> and that is itself
-  an ancestor of <var title="">B</var>, or if there is a browsing
-  context <var title="">P</var> that is a <a href="#child-browsing-context">child browsing
-  context</a> of <var title="">A</var> and that is the <a href="#parent-browsing-context">parent
-  browsing context</a> of <var title="">B</var>.<p>The browsing context with no <a href="#parent-browsing-context">parent browsing context</a>
-  is the <dfn id="top-level-browsing-context">top-level browsing context</dfn> of all the browsing
-  contexts <a href="#nested-browsing-context" title="nested browsing context">nested</a> within
-  it (either directly or indirectly through other nested browsing
-  contexts).<p>The transitive closure of <a href="#parent-browsing-context" title="parent browsing
+  context">nested browsing contexts</dfn>. If a browsing context <var title="">P</var> has a <code><a href="#document">Document</a></code>s <var title="">D</var>
+  with an element <var title="">E</var> that nests another browsing
+  context <var title="">C</var> inside it, then <var title="">C</var>
+  is said to be <dfn id="browsing-context-nested-through" title="browsing context nested through">nested
+  through</dfn> <var title="">D</var>, and <var title="">E</var> is
+  said to be the <dfn id="browsing-context-container">browsing context container</dfn> of <var title="">C</var>. If the <a href="#browsing-context-container">browsing context container</a>
+  element <var title="">E</var> is <a href="#in-a-document" title="in a
+  Document">in</a> the <code><a href="#document">Document</a></code> <var title="">D</var>,
+  then <var title="">P</var> is said to be the <dfn id="parent-browsing-context">parent browsing
+  context</dfn> of <var title="">C</var> and <var title="">C</var> is
+  said to be a <dfn id="child-browsing-context">child browsing context</dfn> of <var title="">P</var>. Otherwise, the <a href="#nested-browsing-context">nested browsing
+  context</a> <var title="">C</var> has no <a href="#parent-browsing-context">parent browsing
+  context</a>.<p>A browsing context <var title="">A</var> is said to be an <dfn id="ancestor-browsing-context" title="ancestor browsing context">ancestor</dfn> of a browsing
+  context <var title="">B</var> if there exists a browsing context
+  <var title="">A'</var> that is a <a href="#child-browsing-context">child browsing context</a>
+  of <var title="">A</var> and that is itself an <a href="#ancestor-browsing-context" title="ancestor
+  browsing context">ancestor</a> of <var title="">B</var>, or if
+  there is a browsing context <var title="">P</var> that is a
+  <a href="#child-browsing-context">child browsing context</a> of <var title="">A</var> and
+  that is the <a href="#parent-browsing-context">parent browsing context</a> of <var title="">B</var>.<p>A browsing context that is not a <a href="#nested-browsing-context">nested browsing
+  context</a> has no <a href="#parent-browsing-context">parent browsing context</a>, and is
+  the <dfn id="top-level-browsing-context">top-level browsing context</dfn> of all the browsing
+  contexts for which it is an <a href="#ancestor-browsing-context">ancestor browsing
+  context</a>.<p>The transitive closure of <a href="#parent-browsing-context" title="parent browsing
   context">parent browsing contexts</a> for a <a href="#nested-browsing-context">nested browsing
-  context</a> gives the list of <dfn id="ancestor-browsing-context" title="ancestor browsing
-  context">ancestor browsing contexts</dfn>.<p>The <dfn id="list-of-the-descendant-browsing-contexts">list of the descendant browsing contexts</dfn> of a
-  <code><a href="#document">Document</a></code> <var title="">d</var> is the list returned by
-  the following algorithm:<ol><li><p>Let <var title="">list</var> be an empty list.</li>
+  context</a> gives the list of <a href="#ancestor-browsing-context" title="ancestor browsing
+  context">ancestor browsing contexts</a>.<p>The <dfn id="list-of-the-descendant-browsing-contexts">list of the descendant browsing contexts</dfn> of a
+  <code><a href="#document">Document</a></code> <var title="">d</var> is the (ordered) list
+  returned by the following algorithm:<ol><li><p>Let <var title="">list</var> be an empty list.</li>
 
    <li><p>For each <a href="#child-browsing-context">child browsing context</a> of <var title="">d</var> that is <a href="#browsing-context-nested-through" title="browsing context nested
    through">nested through</a> an element that is <a href="#in-a-document" title="in a
@@ -41345,12 +41352,13 @@
 
    <li><p>Return the constructed <var title="">list</var>.</li>
 
-  </ol><hr><p>A <code><a href="#document">Document</a></code> is said to be <dfn id="fully-active">fully active</dfn>
+  </ol><p>A <code><a href="#document">Document</a></code> is said to be <dfn id="fully-active">fully active</dfn>
   when it is the <a href="#active-document">active document</a> of its <a href="#browsing-context">browsing
   context</a>, and either its browsing context is a <a href="#top-level-browsing-context">top-level
-  browsing context</a>, or the <code><a href="#document">Document</a></code> <a href="#browsing-context-nested-through" title="browsing context nested through">through which</a> that
-  browsing context is <a href="#nested-browsing-context" title="nested browsing
-  context">nested</a> is itself <a href="#fully-active">fully active</a>.<p>Because they are nested through an element, <a href="#child-browsing-context" title="child
+  browsing context</a>, or it has a <a href="#parent-browsing-context">parent browsing
+  context</a> and the <code><a href="#document">Document</a></code> <a href="#browsing-context-nested-through" title="browsing
+  context nested through">through which</a> it is <a href="#nested-browsing-context" title="nested browsing context">nested</a> is itself <a href="#fully-active">fully
+  active</a>.<p>Because they are nested through an element, <a href="#child-browsing-context" title="child
   browsing context">child browsing contexts</a> are always tied to
   a specific <code><a href="#document">Document</a></code> in their <a href="#parent-browsing-context">parent browsing
   context</a>. User agents must not allow the user to interact with
@@ -41358,7 +41366,21 @@
   of elements that are in <code><a href="#document">Document</a></code>s that are not
   themselves <a href="#fully-active">fully active</a>.<p>A <a href="#nested-browsing-context">nested browsing context</a> can have a <a href="#seamless-browsing-context-flag">seamless
   browsing context flag</a> set, if it is embedded through an
-  <code><a href="#the-iframe-element">iframe</a></code> element with a <code title="attr-iframe-seamless"><a href="#attr-iframe-seamless">seamless</a></code> attribute.<h5 id="navigating-nested-browsing-contexts-in-the-dom"><span class="secno">5.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5><dl class="domintro"><dt><var title="">window</var> . <code title="dom-top"><a href="#dom-top">top</a></code></dt>
+  <code><a href="#the-iframe-element">iframe</a></code> element with a <code title="attr-iframe-seamless"><a href="#attr-iframe-seamless">seamless</a></code> attribute.<p class="note">A <a href="#nested-browsing-context">nested browsing context</a> can in some
+  cases be taken out of its <a href="#parent-browsing-context">parent browsing context</a> (e.g.
+  if an <code><a href="#the-iframe-element">iframe</a></code> element is removed from its
+  <code><a href="#document">Document</a></code>). In such a situation, the <a href="#nested-browsing-context">nested
+  browsing context</a> has no <a href="#parent-browsing-context">parent browsing context</a>,
+  but it still has the same <a href="#browsing-context-container">browsing context container</a>
+  and is still <a href="#browsing-context-nested-through" title="browsing context nested through">nested
+  through</a> that element's <code><a href="#document">Document</a></code>. Such a
+  <a href="#nested-browsing-context">nested browsing context</a> is <em>not</em> a
+  <a href="#top-level-browsing-context">top-level browsing context</a>, and cannot contain
+  <code><a href="#document">Document</a></code>s that are <a href="#fully-active">fully active</a>.
+  Furthermore, if a <a href="#browsing-context-container">browsing context container</a> (such as
+  an <code><a href="#the-iframe-element">iframe</a></code>) is moved to another <code><a href="#document">Document</a></code>,
+  then the <a href="#parent-browsing-context">parent browsing context</a> of its <a href="#nested-browsing-context">nested
+  browsing context</a> will change.<h5 id="navigating-nested-browsing-contexts-in-the-dom"><span class="secno">5.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5><dl class="domintro"><dt><var title="">window</var> . <code title="dom-top"><a href="#dom-top">top</a></code></dt>
 
    <dd>

Received on Thursday, 2 December 2010 07:18:20 UTC