W3C home > Mailing lists > Public > public-html@w3.org > August 2013

Proposal for the deprecation of <blockquote>

From: Heydon Pickering <heydon@heydonworks.com>
Date: Thu, 15 Aug 2013 12:30:57 +0100
Message-ID: <CAJFUXE8YvpaQY+paif+1Dv0kYjOBAekPMdGD=6ndBam+D3SB5Q@mail.gmail.com>
To: public-html@w3.org
I'm writing to propose the deprecation of the <blockquote> element in
favour of a slight modification to author advice regarding the <figure> and
corresponding <figcaption> elements.

The problem with <blockquote>
-----------------------------------------------------------------------

The content of a <blockquote>  "must be quoted from another source" [1],
and yet the only official way to cite that source it through the associated
"cite" attribute. To quote HTML5 Doctor, "Thatís hidden data, however, and
despite the potential for exposing the cite attribute via CSS and/or
JS<http://www.holovaty.com/writing/176/>,
thatís not as useful as a visible link."

Because "cite" is merely an attribute, it has been left to authors to adopt
disparate techniques and elements for displaying the citation as text
separately. Is it just a link, or a link in another paragraph, or do I use
the <cite> element? Or what?

Well, <cite> is more or less _equivalent_ to <blockquote>, plus it can only
be used for the titles of works, not authors, so that's no good.

HTML5 Doctor suggested <footer> (which I adopted for some time), but this
was later deemed non-conforming [3].

Without a dedicated element, how are parsers supposed to know which
contents of the <blockquote> are the quotation itself and which contents
are _about_ the quotation?

 Uses of <blockquote>
-----------------------------------------------------------------------

The original definition of blockquote was largely unsemantic and, although
"the non-semantic use of the blockquote element purely to indent text is
deprecated by the W3C" [4], the lack of a proper citation/attribution
element, means that this usage lingers on: <blockquote> is often used to
highlight blocks of text belonging to the same document.

When I raised the idea of deprecating <blockquote> in favour of <figure> on
Twitter it was this (technically incorrect) usage that one replier objected
to being made obsolete: To them (and who can blame them, given
<blockquote>'s legacy?), <blockquote> can be used for "magazine-style
snippets from a body of text, for one".

<figure> and <figcaption>
-----------------------------------------------------------------------

The beauty of the <figure> and <figcaption> element pairing is the
simplicity of the relationship:

<figure>: thing
<figcaption>: information about thing

And it already permits a variety of applications:

   - annotate illustrations
   - diagrams
   - photos [Example A]<http://www.w3.org/wiki/HTML/Elements/figure#Example_A>
   - code listings ...[5]

Why not just add "quotations" to this list? Arguably, we don't even _have_
to add "quotations", since <figure> is already specified to contain "one
figcaption <http://dev.w3.org/html5/markup/figcaption.html#figcaption>element"
 either followed or preceded "by flow
content"<http://dev.w3.org/html5/markup/terminology.html#flow-content>.
So basic paragraphs, as well as all the other usual suspects can be
included. All that needs to be done is to add some clarification about
quotations in <figure>'s author advice.

Optional <figcaption>s for quotations
-------------------------------------------------

The <figcaption> element is essentially meta-information about the
<figure>, whatever that figure's contents may be. If it's an image it may
be a description of the image or the origin of that image; perhaps even
which camera setup was used to take the image. If it's a code snippet, it
may be information about the function of the code or the syntax that is
used. Quotations, like illustrations, images and code snippets might make
use of a <figcaption> to credit the author of the artifact; the
<blockquote>'s content. This, also, is information about the figure.

As with other uses of <figure>, the inclusion of <figcaption> can be
optional. In practise, this means you could use <figure> to reproduce some
text from the same document (no attribution needed) or use it to support
the document's arguments/theme with an attributed quotation from another
author and/or source.

This is superior to <blockquote> which _insists_ that its contents should
be from an external source [1], but provides no clear (semantic) pattern
for citing that source.

Summary
-----------------------------------------------------------------------

<blockquote> is a semantically unrigorous element with a confusing legacy
which invites misuse. Figure (with figcaption or otherwise) already does
the job of <blockquote> better. The <figcaption> element is far superior to
the esoteric "cite" attribute for source attribution and is available to
both human readers and parsers. As far as I can see, very little work would
have to be done to make <figure>/<figcaption> a candidate for quotations
except changes to author advice. Blockquote would simply have to be
deprecated: So long as it's still there, authors will still use it and they
will continue to use it differently from one another.
<http://dev.w3.org/html5/markup/terminology.html#flow-content>

[1] http://www.w3.org/wiki/HTML/Elements/blockquote
[2] http://html5doctor.com/blockquote-q-cite/
[3] https://www.w3.org/Bugs/Public/show_bug.cgi?id=13082
[4] http://en.wikipedia.org/wiki/Blockquote_element#cite_note-HTM5-def-1
[5] http://www.w3.org/wiki/HTML/Elements/figure
Received on Thursday, 15 August 2013 11:31:29 UTC

This archive was generated by hypermail 2.3.1 : Thursday, 29 October 2015 10:16:34 UTC