Crossposting an idea I had from my inline lists thread:
The <DL>
are calle “description lists” in HTML5 instead of “definition lists”. The scope of them also changes a little. I don’t see them as only suitable for glossary or an alphabetically sorted technical terms list anymore.
That means that I see the “term” as being more like a list symbol, just like “1.”, “a)”, “i.” or bullets and dashes.
I would suggest the following as an alternative for the description list syntax:
~ term1 : definition 1
~ term2
: definition 2
As an example i would like to show you a medical menemonic for coma reasons. The initial letters of the word “smashed” hint to the conditions that can be the reason for the coma. But obviously this list is not a “definition list” in the sense that the “term” (letters) are “defined” by the “definition”.
~ S : stroke
~ M : meningitis
~ A : alcohol
~ S : seizures
~ H : hypoglycaemia
~ E : epilepsy
~ D : drugs
The tilde is indeed similar to the dash in visually representing a
new list item, but there would be no ambiguity about whether you want an
unordered list item or a description list item.
The tilde would also remove the need for a look-back when parsing an detecting a defintion list.
The combination would probably make the whole thing quite distinct. The possibility of an unintended definition lists is nearly wiped out that way.
When using the tilde the ambiguity of lazy wrapping is eliminated.
Both the tilde and the colon could still be easily used for other
purposes, because they would only be a description list in combination.
To get a empty description use ~ term : to get an empty term use ~ : description.