PF/XTech/HTML5/D
Proposal: D - A Single-Letter Element Name for Dialogue
Disclaimer: This is a page in progress. Amongst other things, it is being offered as a solution for renaming HTML5's homophonic DIALOG
element, and is a necessary addition to XHTML2. Please use the D Element's Discussion Page to comment upon this document and the ideas contained herein.
Rationale: Since a dialogue element would be used quite often, the shortest element name is the best element name for the semantic concept of "dialogue".
Element Requirements
1. Dialogue, indicated by the single-letter element <D>
... </D>
should not be limited to a block-level container; instead, D
should be capable of serving as both a block level and an inline element, in accordance with the precedent set by: INS
and DEL
.
Note: If it is decided that two distinct elements are needed -- one for inline use and one for block use -- then the simplest solution would be to use D
inline (since it would be used quite often in a document instance) and DB
or DBLOCK
for block use. Since dialogue is dialogue, however, it would be preferable to have a single element to declaratively mark dialogue, and leave the rest to native structural elements and stylesheets. Therefore, throughout this document, D
is used to indicate a dialogue element in both inline and block level situations.
2. There is a need for inline uses of D
: Q
is not an option in this case, as the characters aren't being quoted, they are engaging in a conversation.
<p> <d class="csg">I think oysters are more beautiful than any religion,</d> he resumed presently. <d class="csg">They not only forgive our unkindness to them; they justify it, they incite us to go on being perfectly horrid to them. Once they arrive at the supper-table they seem to enter thoroughly into the spirit of the thing. There's nothing in Christianity or Buddhism that quite matches the sympathetic unselfishness of an oyster.</d> </p>
3. D
provides a clear and necessary semantic marker in a generic/foundational declarative markup language -- it provides a declarative means of identifying text as dialogue, rather than leaving indications of dialogue embedded in prose to be indicated with character entity or unicode values ("
or u0022
or u0027
, and so on) nor can one rely on extremely spotty implementation of the :before
and :after
pseudo-elements to generate quotes (which, because they are generated by CSS, will not be communicated to most assistive technologies, such as screen readers, so there will be no aural indication that a string of text is a bit of dialog as there would be if a D
element is used;
<!-- begin example of inline dialogue --> <p><d class="f2">So, then what happened?</d> she asked in a hoarse whisper, sliding into a secluded booth.</p> <p><d class="m1">Well,</d> drawled Marlowe, taking his seat, <d class="m1">that's the odd thing -- nothing happened at all...</d> </p> <!-- end example of inline dialogue -->
4. when used as a block level element, there needs to be a child element of D
which can declaratively mark part of the text as not being dialog, such as stage directions, cues, description of non-verbal action, and so on; in the following example, ND
("not dialogue"), has been used and is being proposed to fill this need:
<d> <dl> <dt>Shopkeeper</dt> <dd><nd>[obviously lying]</nd> Sorry, we're just closing for lunch</dd> </dl> </d>
5. since there are many different contexts in which D
is an appropriate element/container, a dialogue element demands a role or type
attribute, in order to enable differentiation between types of dialogue; a very preliminary list of predefined role values for D
follows:
conversation
dialogue
(covers theater, film, fiction, where the element is used to distinguish dialogue from other types of content)transcript
<d role="transcript> <dl> <dt>Donegan:</dt> <dd>Did you have any conversation with Brothman to the effect that this information was going to the Russians?</dd> <dt>Bentley:</dt> <dd>I remember once he asked me if the Amtorg people l1ked what they were getting.</dd> <dt>Donegan:</dt> <dd>Did you ever identify yourself to him as one who had worked for the Amtorg?</dd> <dt>Bentley:</dt> <dd>No, I never had. I was introduced to him as his Communist Party superior, and he was to give me dues and information.</dd> <dt>Donegan:</dt> <dd>Did he give you his Communist Party dues?</dd> <dt>Bentley:</dt> <dd>Yes, he did.</dd> <dt>Donegan:</dt> <dd>On how many occasions, would you say?</dd> <dt>Bentley:</dt> <dd>That would be hard to say. It wasn't every week, but it might be roughly every month.</dd> </dl> </d>
DL Should Give Structure to, Not Generically Indicate, Dialogue
1. a DL
is not a dialogue string, but a definition list; changing DL
to indicate dialogue is breaking backwards compatibility;
2. there is a need for DL
as a definition list -- it should not be watered down to specifically refer to dialog -- YES, dialogue can be presented as a DL
, where the DT
is used to signify the speaker, and the DD
is used to contain the speaker's dialog, but that is using a DL
to give structure to the dialog, not a transfiguration of DL
from "definition list" to "dialogue"; such a change is unacceptable, as definition lists are well suited to their long-established usage as "definition lists": an efficient means of presenting information that is often unnecessarily stuffed into gratuitous TABLE
-ettes (as has become the lamentable trend in specification publication)
<!-- HTML5 example of dialogue contained in a definition list, using text from Oscar Wilde's 'Importance of Being Earnest' --> <d role="dialogue"> <dl> <dt>Algernon</dt> <dd>Why is it that at a bachelor's establishment the servants invariably drink the champagne? I ask merely for information.</dd> <dt>Lane</dt> <dd>I attribute it to the superior quality of the wine, sir. I have often observed that in married households the champagne is rarely of a first-rate brand.</dd> <dt>Algernon</dt> <dd>Good heavens! Is marriage so demoralising as that?</dd> <dt>Lane</dt> <dd>I believe it <em>is</em> a very pleasant state, sir. I have had very little experience of it myself up to the present. I have only been married once. That was in consequence of a misunderstanding between myself and a young person.</dd> </dl> </d>
<!-- XHTML2 example of dialogue contained in a definition list, using text from Oscar Wilde's 'Importance of Being Earnest' --> <d role="dialogue"> <dl> <di> <dt>Algernon</dt> <dd>Why is it that at a bachelor's establishment the servants invariably drink the champagne? I ask merely for information.</dd> </di> <di> <dt>Lane</dt> <dd>I attribute it to the superior quality of the wine, sir. I have often observed that in married households the champagne is rarely of a first-rate brand.</dd> </di> <di> <dt>Algernon</dt> <dd>Good heavens! Is marriage so demoralising as that?</dd> </di> <di> <dt>Lane</dt> <dd>I believe it <em>is</em> a very pleasant state, sir. I have had very little experience of it myself up to the present. I have only been married once. That was in consequence of a misunderstanding between myself and a young person.</dd> </di> </dl> </d>