Details
Description
Summary
Enhance the javadoc tool to generate HTML5 markup.
Goals
Provide an option to javadoc to request either HTML 4 or HTML5 output.
The HTML5 markup should be semantic, i.e., clearly separate meaning from
style and content. The pages generated using HTML5 markup should satisfy
accessibility requirements.
Non-Goals
It is a not a goal to replace the current three-frame structure of the generated HTML pages; that may be the subject of a future JEP.
Motivation
The javadoc tool currently generates pages in HTML 4.01, which
is an old standard. HTML5 is the latest standard for HTML. HTML5
increases the semantic value of web pages and makes it easier to create
accessible web pages.
Description
A command-line option will be added to
javadocto request a specific type of output markup. HTML4, which is the current output, will be the default. HTML5 will become the default in a later JDK release.The semantic value of the generated HTML will be improved by using structural HTML5 elements such as
header,footer,nav, etc.The HTML5 markup will implement the WAI-ARIA standard for accessibility. Specific roles will be assigned to elements in the HTML document using the role attribute.
The
-Xdoclintfeature will be modified to validate input comments based upon the requested markup.
Testing
Tests will be needed to ensure that:
- The HTML5 markup is valid
- The HTML5 markup is accessible
- The new command-line option works correctly
- The HTML5 markup works across multiple browsers
The lack of automated tools to test accessibility will hamper comprehensive accessibility testing.
Issue Links
- is blocked by
-
JDK-8055729
Phase 1: Update the current generated markup to be HTML5 compliant
-
-
JDK-8059892
Phase 2: Update the generated markup to use new HTML5 tags.
-
-
JDK-8064826
Phase 3: Update the generated markup to be HTML5 accessibility compliant
-
-
JDK-8064827
Phase 4: Update DocLint to validate HTML5
-
-
JDK-8072945
Javadoc should generate valid and compliant HTML5 output
-
-
JDK-8074521
Generate iframe instead of frame and frameset for index.html page
-

