This is a placeholder task, because I'm not sure exactly what syntax is best here.
Currently in order to add class/id/etc attributes on section headings or list items (common elements in talk pages) we need to switch from wikitext to HTML syntax. That is, `<h2 class="foo">....</h2>` instead of `== .... ==` and `<dl><dd class="foo">....</dd></dl>` instead of `: ...`.
That's unfortunate: this syntax looks ugly, which means it is hard to use attributes to record additional information about comments, for example comment outdents (`class="outdent"` or `data-talk="outdent"`) or human-readable ids on individual comments (`id="foo"`).
Tables, table rows, table cells, and table captions already have wikitext syntax for attribute, which may or may not be a good model here.
Additionally, talk page list items are expected to use heredoc syntax when the contents get 'complicated', so we might imagine tying attribute syntax to heredoc syntax in order to minimize backward compatibility concerns.
Existing table syntax:
```
{| class="wikitable"
|+ class="bar" | caption
|- style="foo"
! class="bar" | cell
|- style="foo"
| style="foo" | cell
|}
```
Some options for lists and headings (for discussion only; I'm not actually endorsing any of these at this point):
```
:::<attr id=foo class=bar/> xyz ("magic extension")
:::{{#attr|id=foo|class=bar}} ("magic parser function")
:::|id=foo|class=bar| ("like table syntax")
:::[id=foo][class=bar] ("like CSS syntax")
::: id=foo class=bar <<< xyz >>> ("requires use of heredoc syntax")
===<attr id=foo> foo ===
=== id=foo class=bar <<< heading >>> ===
```