[whatwg] [HTML5] Named start values for lists?
Ian Hickson
ian at hixie.ch
Thu Nov 8 20:22:35 PST 2007
(Continuing the feedback on e-mail on this thread. See earlier message
for my take on this thread's suggestions.)
On Tue, 27 Jun 2006, Lachlan Hunt wrote:
>
> I recall similar suggestions made on www-html in the past. Something like
> this could be useful:
>
> <ol id="part1">
> <li>Item 1</li>
> <li>Item 2</li>
> <li>Item 3</li>
> </ol>
>
> <ol id="part2" continue="part1">
> <li>Item 4</li>
> <li>Item 5</li>
> <li>Item 6</li>
> </ol>
>
> However, there are several issues that would need to be addressed:
>
> * Should |continue| be an IDREF that can only continue a previous list
> in the same page, or should it be a URI that can continue lists from
> other pages?
>
> * Can it be defined and implemented in a way that avoids circular
> references. e.g.
> <ol id="part1" continue="part2"/>
> <ol id="part2" continue="part1"/>
>
> * What does it mean if <ol contine="foo"> references a <ul id="foo">?
> Should it only be able to link lists of the same type? (i.e. ol with
> another ol and ul with another ul)
>
> * What does it mean if it references any other element that isn't a <ul>
> or <ol>?
>
> * What should happen if it references a non-existent element?
>
> * What does it mean if two lists continue from the same previous list?
> e.g.
> <ol id="part1" continue="part2"/>
> <ol id="part2" continue="part1"/>
> <ol id="part3" continue="part1"/>
>
> * How are references duplicate IDs handled in this situation? (That
> could probably be the same way <label for=""> handles it)
>
> * Which takes precedence out of <ol continue="part1" start="2"> and <li
> value="3">?
>
> * Backwards compatibility is also an issue, though it could possibly be
> handled with some JavaScript that dynamically calculates and sets the
> start attribute.
>
> * Would implementations have difficulty with re-numbering list items in
> linked lists, when a new <li> is dynamically inserted into a previous
> list?
On Tue, 27 Jun 2006, Anne van Kesteren wrote:
>
> * How does it interact with CSS counters.
All very good points.
On Tue, 27 Jun 2006, dolphinling wrote:
>
> The simpler named start values that I was thinking of would avoid all
> that. It wouldn't be tied to any other element's ID, multiple ones with
> the same name would simply continue the list, one after the other, and
> an unknown name would start a new list, at one.
>
> It would also be less powerful: you couldn't rearrange a list, so the
> later parts were higher in source order, and you couldn't start a named
> list at a value other than one.
That's a very interesting idea, yes. It does indeed address many problems.
On Wed, 28 Jun 2006, Ric Hardacre wrote:
>
> It would also be good if the simple number element that has been
> discussed over the past few weeks could reference a list item, something
> similar to
>
> <p>John's favorite fruit was rumoured to be bananas <sup><n
> source="banana_ref"></n></pre>. But this has never been proven.</p>
>
> <ol>
> <li>Apples Reference Source</li>
> <li id="banana_ref">Bananas Reference Source</li>
> <li>Oranges Reference Source</li>
> </ol>
>
> At the mo this would equate to 2, but if another footnote reference were
> added below Apples then it would automagically allow the citation to
> change to 3.
>
> If you also wanted the reference to be an anchor (see wikipedia) then
> that might make things more complex, however, as you'd need a banana_ref
> for the number and an anchor named "banana_anc", perhaps.
Right, that's similar to the earlier proposals.
On Wed, 28 Jun 2006, Henri Sivonen wrote:
>
> Hopefully, the issue list adequately demonstrates that the continue
> attribute is way too complicated considering that the old start
> attribute solves the numbering problem in a very pragmatic way.
I think on the long run we probably do want a way to link lists together.
But I agree that it should be ok for now to just use start="".
On Wed, 28 Jun 2006, Lachlan Hunt wrote:
>
> The start and value attributes certainly do solve the majority of the
> use cases. They don't semantically link the lists together and they
> place the responsibility of calculating the starting values upon the
> authoring/publishing system, rather than the browser.
>
> What are the specific use cases that require the lists to be
> semantically linked? If there are any, could they be addressed using a
> microformats approach?
>
> e.g. Lists with class="split-list" (or any other class name) that share
> the same title could be defined by a microformat to be linked lists.
> Perhaps, the class name isn't even required, the matching titles could
> be sufficient.
>
> <ol class="split-list" title="Fruit">
> <li>Apples</li>
> <li>Bananas<li>
> </ol>
>
> <ol class="split-list" title="Fruit" start="3">
> <li>Coconuts</li>
> <li>Dates</li>
> <li>Figs</li>
> </ol>
That would be a good start to seeing how dire the need is.
On Thu, 29 Jun 2006, dolphinling wrote:
>
> I've thought a bit more, and *assuming semantically linked,
> automatically numbered split lists should be allowed* (which so far only
> one other person has even touched on!), I think the best solution would
> be something like the following:
>
> <p>Chores for today:</p>
>
> <ol listname="chores">
> <li>Clean living room</li>
> <li>Clean bathroom</li>
> </ol>
>
> <p>When cleaning bathroom, make sure to get all the grout between the
> shower tiles. Also, the sink needs to be scrubbed, too.</p>
>
> <ol listname="chores">
> <li>Sweep kitchen</li>
> <li>Wash dishes</li>
> </ol>
>
> Numbering would start at 1, and continue in source order (superseded, of
> course, by any start= or value= attributes).
>
> This gives the author the power to number however they want, while being
> much less complex spec- and implementation-wise. A few cases where a
> list is not only split, but the sections are rearranged on the page,
> require the author to fall back on start=, but since it doesn't actually
> remove any functionality, I think that's an acceptable tradeoff.
>
> As for how this would interact with CSS Counters... It appears counters
> in CSS 3 are insufficient even to handle the already-in-spec start= and
> value= attributes. That should probably be taken up with the CSS WG.
Good points.
--
Ian Hickson U+1047E )\._.,--....,'``. fL
http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,.
Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
More information about the whatwg
mailing list