Copyright © 2012-2013 W3C® (MIT, ERCIM, Keio, Beihang), All Rights Reserved. W3C liability, trademark and document use rules apply.
This specification defines a longdesc
attribute to link
extended descriptions with images in HTML5-based content.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
This document was developed through the HTML Accessibility Task Force, and is published by the HTML Working Group with approval by the Protocols and Formats Working Group. This version is published in response to feedback received on the First Public Working Draft and addresses a number of issues that were raised and resolved.
Since the First Public Working Draft substantive changes include:
longdesc
should be "accessible".longdesc
.longdesc
.A summary of changes is available in the Change History section of this document. A complete history of changes is available by viewing the differences between this draft and the First Public Working Draft.
Feedback on the information provided here is essential to the ultimate success of the HTML5 Image Description Extension. The HTML Accessibility Task Force asks in particular:
If you wish to make comments regarding this document, please send them to public-html-a11y@w3.org (subscribe, archives), or file them directly into the W3C Bug tracker for this specification by 20 June 2013. All feedback is welcome. In-progress updates to the document by be viewed in the publicly visible editors' draft.
This document is proposed as the basis for a Last Call Working Draft. This document is intended to become a W3C Recommendation, either on its own or merged into an HTML Recommendation.
Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
HTML 4 provided a longdesc
attribute for the img
element. This enabled a machine-discoverable description of an image to
be linked to the image. This extension specification defines the same
functionality for HTML5-based content.
<!-- The description is somewhere on the same page as the image --> <img src=
"http://example.com/graph1" alt="(Drinks are getting sweeter)" title="Figure One" longdesc="#graph1Explained" ><!-- The description is a page on its own --> <img src=
"figure1" alt="figure 1" longdesc="http://example.com/desc1" ><!-- The description is one of several within an external page --> <img src=
"ExampleImage" alt="example" longdesc="http://example.com/descs#item3" ><!-- The description is included in a data: URI --> <img src=
"logo" alt="W3C" longdesc="data:text/html;charset=utf-8;,%3C!DOCTYPE%20html%3E%3Chtml%3E%3Chead%3E %3Ctitle%3EDescription%20of%20the%20W3C%20Logo%3C/title%3E%3C/head%3E%3Cbody%3E%3Cp%3EA%20blue%20capital%20letter >
%20%22W%22%20with%20kerning%20so%20it%20touches%20a%20blue%203%2C%20followed%20by%20a%20black%20shadow%20
of%20a%20white%20capital%20letter%20C%20all%20on%20a%20white%20background%3C/body%3E%3C/html%3E"
As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.
The key words must, should, and may in this specification are to be interpreted as described in [RFC2119].
The IDL fragments in this specification must be interpreted as required for conforming IDL fragments, as described in the Web IDL specification. [WEBIDL]
The terms "valid non-empty URL potentially surrounded by spaces", "hyperlink", and "reflect", used in this specification are defined in [HTML5].
This document does not define the term "accessible" nor accessibility, but uses them with the sense they have in [WCAG]
There are many ways users can successfully interact with content even
if they cannot see, or see well, images included in that content. The alt
attribute is designed to ensure that for everyday work, a user has
enough information to replace an image, and often this is more helpful
than a detailed description of every image. The longdesc
attribute is designed to complement this functionality, to meet the
following use cases.
longdesc
attributeZero or one longdesc
attributes may
be added to any img
element.
The longdesc
attribute must
contain a valid
non-empty URL potentially surrounded by spaces. The URL is a hyperlink
to a description of the image that its parent img
element represents.
The linked description should be a broadly accessible format. (For example, a link to another version of the image is almost certainly not a useful description, and plain text is an extremely limiting format).
This section is informative
Best practices for checking descriptions of images are beyond the scope of this document, but there are many resources available. For further guidance tool developers can consult e.g. [ATAGB3]. ISSUE: This doesn't seem a great reference - is there anything better? This is tracked in bug 21501 and its dependent bugs. Unless a proposal is made and accepted for improvement this bug will simply be closed after Last Call.
Authors should put descriptions within an
element which is the target of a fragment link (e.g. longdesc="example.html#description"
)
if a description is only part of the target document.
This section is informative
Best practices for full descriptions of images are beyond the scope of this document, but there are many resources available.
This document does not define the term "accessible" nor accessibility. For further guidance on making an accessible document, authors can consult e.g. [WCAG].
If the longdesc
value is valid, User agents must
make the link available to all users through the regular user
interface(s).
If the longdesc
value is valid, User agents must
expose the link to relevant APIs, especially accessibility-oriented
APIs.
User agents should enable users to discover when images in a page contain a long description.
This section is informative
Complete documentation of best practices for implementation is beyond the scope of this document. However the following notes are offered to help repair a common authoring mistake and avoid a common user agent mistake.
One of the most common mistakes authors make that is easily repaired by user agents is to use a description, instead of a URL that links to a description. This means there is often plain text description in the content of an invalid longdesc attribute. Converting such attributes to data URLs is a simple repair strategy that can help recover from cases where authors have made this mistake.
Since some images with long description are also normal link content, it is important for implementations to ensure that users can activate both behaviors. Likewise, it is generally helpful when the behavior for finding, reading, and returning from a long description to the image described is a consistent experience.
Obviously, it is important that access to the long description is accessible to users. Further information on how to do this can be found in [UAAG].
HTMLImageElement
interfacepartial interface HTMLImageElement {
attribute DOMString longdesc;
};
longdesc
of type DOMStringThe longdesc
IDL attribute must be a valid
non-empty URL potentially surrounded by spaces. It represents a
hyperlink to a detailed description of the image its parent HTMLImageElement
represents.
The longdesc
IDL attribute must
reflect
the HTML content attribute longdesc
.
This section is informative
image.longdesc
[ = value ]
Returns a DOMString that represents the attribute's contents.
Can be set, to replace the contents of the attribute with the given string.
//Make the first internal longdesc reference absolute
var baseURL = document.location.origin + document.location.pathname;var someImage = document.querySelector('img[longdesc^=#]' ); someImage.longdesc = baseURL + someImage.longdesc;
//Open new windows for each longdesc found
var describedImages = document.querySelectorAll('img[longdesc]' ); for (i in describedImages) { if (i.longdesc) window.open(i.longdesc); }
//Tries to repair errors where the longdesc isn't a URI
var describedImages = document.querySelectorAll('img[longdesc]' ); for (i in describedImages) { if (i.longdesc && !(validURL(i.longdesc)) {//assumes some URL validating function var theData = encodeURIComponent(i.longdesc); i.longdesc = "data:text/plain;charset="; i.longdesc += document.charset; i.longdesc += theData; } }
Thanks to the HTML Working Group of the late 1990s for the original specification of longdesc, to those who have implemented it in various kinds of software, and to many many people involved with the development of HTML5 (including but not limited to those who discussed "ISSUE-30" in the HTML Working Group, the Protocols and Formats Working Group, the W3C Advisory Board, and around countless dinner tables, coffee breaks, and elsewhere) for the ideas, discussions and contributions that led to the initial draft of this specification. With the exception of Laura Carlson, who did far more very valuable work than it took me to produce this specification, I haven't named them: the list might be larger than the content of the specification.
For specific comments and suggestions that led to improvements over successive drafts of this specification, thanks to the W3C's HTML Accessibility Task Force, the W3C Internationalization Working Group, and to Jonathan Avila, Robin Berjon, James Craig, Steve Faulkner, John Foliot, Geoff Freed, Richard Ishida, Anne van Kesteren, David MacDonald, Chris Mills, Jay Munro, Devarshi Pant, Leif Halvard Silli, Mathew Turvey and Boris Zbarsky. Any errors are despite, not as a result of, their efforts.
(This section is not normative)
Since the First Public Working Draft substantive changes include:
longdesc
should be "accessible".longdesc
.longdesc
.longdesc
was changed to reflect
the HTML content attribute longdesc
.Editorial changes include: