Bracketed paragraphs which end quotes are treated as captions
(`<html:figcaption>`); otherwise, they are footers (`<html:footer>`).
-Non·empty paragraphs are classified as follows :—
+Non·empty paragraphs (which, to be clear, may still result in empty
+ `<html:p>` elements) are classified as follows :—
- If the paragraph consists of only the following section‐break
characters, plus any amount of white·space, then it is
- Otherwise, the paragraph is ordinary.
After this classification, each ordinary paragraph is further
- classified by type based on its first character (which is must be
- followed by white·space, a pilcrow, or else the only thing on the
- line) :—
+ classified by type based on its first character (which must be
+ followed by white·space or a pilcrow, or else be the only thing on
+ the line) :—
- If the paragraph is preformatted, it is an ordinary paragraph.
secondary, and tertiary list items which precede them.
- If the paragraph begins with `※`, it is an ordinary note
- (`<html:div role="note" class="note">`).
+ (`<html:section role="note" class="note">`).
- If the paragraph begins with `☡`, it is a cautionary note
- (`<html:div role="note" class="caution">`).
-
-- If the paragraph begins with `🛈`, it is an informative note
- (`<html:div role="note" class="info">`).
+ (`<html:section role="note" class="caution">`).
- If the paragraph begins with `⯑`, it is a questioning note
- (`<html:div role="note" class="query">`).
+ (`<html:section role="note" class="query">`).
+
+- If the paragraph begins with `@`, it is an abstract
+ (`<html:section role="doc-abstract">`).
-- If the paragraph begins with `⚠︎`, it is a warning note
- (`<html:div role="note" class="warn">`).
+- If the paragraph begins with `🛈`, it is a (informative) tip
+ (`<html:section role="doc-tip">`).
+
+- If the paragraph begins with `⚠︎`, it is a (warning) notice
+ (`<html:section role="doc-notice">`).
- If the paragraph begins with `^`, it is a footnote
(`<html:li class="ordered footnote" aria-level="1">`).
This may be suffixed with a language tag beginning with `@` and
terminated with `$`.
+When a paragraph produces an `<html:p>` element “wrapped in” another
+ kind of element (e·g, a blockquote, section, or list item), the
+ identifier and language of the first paragraph are applied to the
+ wrapping element.
+If the first paragraph has no other contents, it is deleted.
+To apply the identifier or language to the `<html:p>` element itself,
+ and not its wrapper, one can simply make the first paragraph empty
+ (using a literal `¶` with no other contents).
+This paragraph will be dropped, but the following paragraphs will still
+ be processed as non·initial.
+
The remaining characters in a paragraph form its contents.
Markup within paragraphs is delimited with·out exception by pairs of
characters, with the following precedence :—
by the following steps :—
- Continuation paragraphs are joined with the preceding list items or
- divs.
+ sections.
- List items of a higher level are nested in preceding list items, when
present.
+ List items of a level greater than 1 can also be nested in preceding
+ sections (notes, abstracts, ⁊·c…).
- Successive list items of the same level and class are joined into
a single list.