An outline can be very complex. I want to introduce three terms:
- well-formed outline: An outline that meets certain criteria (see #Criteria_for_a_Well_Formed_Outli and #Examples)
- ill-formed outline: An outline that fails to meet those criteria
- outline: A "generic" outline that might be well- or ill-formed (or have regions of either).
Because of the possible complexity of outlines, my first few approaches (to folding macros for TWiki markup) were oversimplifed and did not work when I hit some of the more complex outlines. (Lesson learned (I hope): I avoided creating a wealth of examples (to include all the ill-formed outline possibilities) because it was hard to think through, nevertheless, I would have been better off if I had accomplished that sooner.)
Aside: I wrestled a little with calling the ill-formed outline a degenerate outline, but ran into two problems — what to call a non-degenerate outline (a generate outline?) and/or what term to use generically for an outline that might be either. (One possibility, tongue-in-cheek, is "outline", "degenerate outline", and "generate (or, worse (?): non-degenerate) outline".)
See:
Contents
Criteria for a Well-Formed Outline
- The first line of the outline must be a heading, and it must be at a level as high (or higher) as the highest heading in the outline (rephrase). Aside: Maybe a "super" well formed outline would require that the first line be a Level 1 heading; but, for a variety of reasons I prefer not to start a TWiki page with the highest level heading, one being the font size of a Level 1 heading in the default TWiki "skin", another being the possibility of wanting to add a new higher level heading after some amount of writing, and/or the possibility (perhaps a future enhancement of TWiki, or does it already exist) to create a composite TOC (basically a collapsed outline) for multiple pages, in which case the page names (for example) might become higher level headings than the already existing headings on those pages.
- As the outline "descends" to lower levels, no heading levels are skipped (rephrase). Example: A Level 3 heading cannot be followed by (ignoring intervening text) a Level 5 heading — there must be a Level 4 heading between the two.
Examples
Very Simple
---+ Level 1
text
---++ Level 2
text
---+++ Level 3
text
---++++ Level 4
text
---+++++ Level 5
text
---++++++ Level 6
text
A Little More Complex
---+ Level 1
text
---++ Level 2
text
---+++ Level 3
text
---++++ Level 4
text
---+++++ Level 5
text
---+++ Level 3
text
---++++ Level 4
text
---+++++ Level 5
text
---++++++ Level 6
text
An Acceptable Variant
---++ Level 2
text
---+++ Level 3
text
---++++ Level 4
text
---+++++ Level 5
text
---++++++ Level 6
text
Contributors
- () RandyKramer - 05 Nov 2003
- If you edit this page: add your name here; move this to the next line; and if you've used a comment marker (your initials in parenthesis), include it before your WikiName.
Revision Comment
- 10 Jan 2004: No intentional content changes, just trying to improve the writing (not complete)
Page Ratings
nn