Class HTML5DutchWebGuidelinesValidator

  • All Implemented Interfaces:
    Validator

    public class HTML5DutchWebGuidelinesValidator
    extends AbstractHTML5Validator
    Validator allowing to validate (X)HTML content against Dutch Web Guidelines.

    "There are internationally recognized agreements for creating web sites, known as 125 quality requirements standards warrants a significantly better website. The Netherlands government has assembled these international standards in a quality model called the Web Guidelines. This quality model comprises 125 quality requirements for the benefit of better websites."

    Version:
    $Id: 71d1719e92aa0bcba3f61c8b9e2511362f5a5af1 $
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addError​(ValidationError.Type errorType, int line, int column, String key)
      Add an error to the list of errors using our message resources.
      String getName()  
      protected void validate​(Document document)  
      void validateRpd10s1()
      Make sure that the meaning of communicative elements is not expressed only through colour.
      void validateRpd10s2()
      Be consistent with colour use when indicating meaning.
      void validateRpd10s3()
      Make sure there is sufficient brightness contrast between the text and the background colour.
      void validateRpd11s1()
      Use tables to display relational information and do not use them for layout.
      void validateRpd11s10()
      When using tables for layout: do not apply any accessibility markup.
      void validateRpd11s2()
      Use the th (table header) to describe a column or row in a table with relational information.
      void validateRpd11s3()
      Group rows with only th (table header) cells with the thead (table head) element.
      void validateRpd11s4()
      Use the scope attribute to associate table labels (th cells) with columns or rows.
      void validateRpd11s5()
      Use the headers and id attributes to associate table labels (th cells) with individual cells in complex tables.
      void validateRpd11s6()
      Provide abbreviations for table labels (th cells) by means of the abbr (abbreviation) attribute if the content of the table label is so long that repetition in a speech browser could cause irritation.
      void validateRpd11s7()
      Use the caption element or heading markup to provide a heading above a table.
      void validateRpd11s8()
      When modifying an existing website: use CSS for the presentation and layout of web pages, and avoid using tables for layout.
      void validateRpd11s9()
      When using tables for layout: do not use more than one table and use CSS for the design of this table as much as possible.
      void validateRpd12s1()
      Do not use frames on websites.
      void validateRpd13s1()
      Use the label element to explicitly associate text with an input field in a form.
      void validateRpd13s10()
      Indicate which fields are mandatory and which are optional.
      void validateRpd13s11()
      Provide alternate contact options, such as address details, telephone number or e-mail addresses, if available.
      void validateRpd13s12()
      Let the visitor know what will be done with the form when it is sent.
      void validateRpd13s13()
      Give the visitor the option of saving his reply.
      void validateRpd13s14()
      Once the visitor has completed and sent the form, send him confirmation that his message has been received by the recipient (autoreply).
      void validateRpd13s15()
      Before displaying complex forms, give the visitor an impression of the size of the form.
      void validateRpd13s16()
      List documents which the visitor might need while completing the form beforehand.
      void validateRpd13s17()
      Provide forms with instructions for the visitor if necessary, particularly for the applicable input fields.
      void validateRpd13s18()
      Do not add any reset buttons to forms.
      void validateRpd13s2()
      Use the tabindex attribute to deviate from the standard tab order on form fields if this order is inadequate for correct use of the form by keyboard users.
      void validateRpd13s3()
      Apply grouping of input fields by means of the fieldset element.
      void validateRpd13s4()
      Avoid automatic redirection during interaction with forms.
      void validateRpd13s5()
      Do not use client-side script or forms as the only way of accessing information on the site.
      void validateRpd13s6()
      Do not confront a visitor with a non-working form if optional technologies "such as CSS or client-side script" are not supported by the browser.
      void validateRpd13s7()
      Use CSS sparingly for input fields and form buttons.
      void validateRpd13s8()
      If a visitor has to provide personal data, let him know what will be done with this data, e.g.
      void validateRpd13s9()
      Do not ask a visitor to provide more information by means of a form than necessary for the purpose of the form.
      void validateRpd14s1()
      Do not use client-side script for essential functionality on web pages, unless any lack of support for these scripts is sufficiently compensated by HTML alternatives and/or server-side script.
      void validateRpd15s1()
      The visitor should have the option of choosing between languages on every page of the site.
      void validateRpd15s2()
      Links for language choice should have a clear and consistent place in the navigation of the site.
      void validateRpd15s3()
      Use fully written out (textual) links to the language versions.
      void validateRpd15s4()
      Write links to language versions in their corresponding languages.
      void validateRpd15s5()
      Do not use associations with nationalities for language choice.
      void validateRpd15s6()
      Specify the base language of a page in the markup.
      void validateRpd15s7()
      Indicate language variations in the content of pages in the markup.
      void validateRpd16s1()
      Specify the character set for web pages.
      void validateRpd16s2()
      Specify the UTF-8 character set.
      void validateRpd16s3()
      Also specify the character set by means of HTTP headers, if possible.
      void validateRpd16s4()
      Use (at least) the meta element to specify the character set and place this element as high as possible in the head section of the markup.
      void validateRpd18s1()
      Use a unique, descriptive title for each page.
      void validateRpd18s2()
      Write short, concise text, in which the main message is mentioned at the top of the page.
      void validateRpd1s1()
      Keep structure and design separate as much as possible: use HTML or XHTML for the structure of the site and CSS for its design.
      void validateRpd1s2()
      Build websites according to the "layered construction" principle.
      void validateRpd1s3()
      Do not make the function of the website dependent on optional technology, such as CSS and client-side script: optional technology should complement the information on the site and its use, and should not interfere with access to it if this technology is not supported.
      void validateRpd22s1()
      Use language that the visitor understands: limit the use of jargon, difficult terms and abbreviations.
      void validateRpd22s10()
      Give visitors the option of finding information in alternate ways.
      void validateRpd22s2()
      Give visitors an escape route: possibilities to continue if they get stuck.
      void validateRpd22s3()
      Don't make visitors guess: provide information on how they can correct errors they have made.
      void validateRpd22s4()
      Make modified error pages "for errors such as dead links (404 Not Found)" where the visitor is given options for continuing within the site.
      void validateRpd22s5()
      In the event of an error message as a result of sending a form, give the visitor the option of correcting the error in the form immediately and don't make him be dependent on the use of the back button.
      void validateRpd22s6()
      When implementing a search engine on the website: use "smart" search technology that takes into account spelling errors, similar search terms, terms in singular or plural form, etc.
      void validateRpd22s7()
      Provide a well-organised list of the most relevant search results.
      void validateRpd22s8()
      Give visitors the option of reporting errors on the site.
      void validateRpd22s9()
      Use colours, icons and textual explanations to draw the visitor's attention to an error message and explain the problem.
      void validateRpd2s1()
      Use HTML 4.01 or XHTML 1.0 according to the W3C specifications for the markup of websites.
      void validateRpd2s2()
      Do not use any markup which is referred to as deprecated (outmoded) in the W3C specifications.
      void validateRpd2s3()
      When modifying an existing website: only use the Transitional version of HTML 4.01 or XHTML 1.0 if it is not possible or desirable to use the Strict version.
      void validateRpd2s4()
      When building a new website: only use the Strict version of HTML 4.01 or XHTML 1.0.
      void validateRpd2s5()
      Do not use frames on websites.
      void validateRpd2s6()
      Use CSS Level-2.1 according to the W3C specification for designing websites.
      void validateRpd2s7()
      If client-side script is used, use ECMAScript according to the specification.
      void validateRpd2s8()
      If elements in the HTML hierarchy are to be manipulated, use the W3C DOM according to the specification.
      void validateRpd2s9()
      Build a website according to the Web Content Accessibility Guidelines (WCAG 1.0) of the W3C.
      void validateRpd3s1()
      Write both grammatically correct and descriptive markup.
      void validateRpd3s10()
      Use the cite element for references to people and titles.
      void validateRpd3s11()
      Avoid using the q (quotation) element.
      void validateRpd3s12()
      Use the blockquote element to indicate (long) quotations.
      void validateRpd3s13()
      Use ol (ordered list) and ul (unordered list) elements to indicate lists.
      void validateRpd3s14()
      Use the dl (definition list), the dt (definition term) and dd (definition data) elements to indicate lists with definitions.
      void validateRpd3s15()
      Give meaningful names to id and class attributes.
      void validateRpd3s2()
      Use markup for headings that express the hierarchy of information on the page.
      void validateRpd3s3()
      Do not skip any levels in the hierarchy of headings in the markup.
      void validateRpd3s4()
      Use the p (paragraph) element to indicate paragraphs.
      void validateRpd3s5()
      Use the em (emphasis) and strong elements to indicate emphasis.
      void validateRpd3s6()
      Use the abbr (abbreviation) element for an abbreviation if confusion could arise concerning its meaning, if the abbreviation plays a very important role in the text or if the abbreviation is not listed in the Dutch dictionary.
      void validateRpd3s7()
      Use the dfn (definition) element to indicate terms that are defined elsewhere in a definition list.
      void validateRpd3s8()
      Use the ins (insertion) and del (deletion) elements to indicate regular changes in the content of a page.
      void validateRpd3s9()
      Avoid using the sup (superscript) and sub (subscript) element if possible.
      void validateRpd4s1()
      Create unique, unchanging URLs.
      void validateRpd4s2()
      Dynamically generated URLs should continue to refer to the same content if content is changed or added.
      void validateRpd4s3()
      Avoid using sessions in URLs.
      void validateRpd4s4()
      Provide redirection to the new location if information is moved.
      void validateRpd4s5()
      Automatic redirection should be carried by the server if possible.
      void validateRpd4s6()
      Use friendly URLs that are readable and recognizable.
      void validateRpd4s7()
      Set up a readable, expandable directory structure.
      void validateRpd5s1()
      In the event that important information is provided through a closed standard, the same information should also be provided through an open standard.
      void validateRpd6s1()
      Each HTML or HTML5 document must begin with a valid doctype declaration.
      void validateRpd6s2()
      Put the content of the page in the HTML source code in order of importance.
      void validateRpd7s1()
      The alt (alternative) attribute should be used on every img (image) and area element and should be provided with an effective alternative text.
      void validateRpd7s2()
      Do not use an alt attribute to display tooltips.
      void validateRpd7s3()
      Do not use d-links on websites.
      void validateRpd7s4()
      Images placed in a link should have a non-empty text alternative to enable visitors who do not see the image to follow the link.
      void validateRpd7s5()
      When using image maps, indicate an effective text alternative for both the img element and each area element by means of the alt attribute.
      void validateRpd7s6()
      Decorative images should be inserted via CSS as much as possible.
      void validateRpd7s7()
      Applying CSS Image Replacement techniques to essential information is not recommended.
      void validateRpd8s1()
      Do not describe the mechanism behind following a link.
      void validateRpd8s10()
      Do not make it impossible to tab to links.
      void validateRpd8s11()
      Avoid using the Access key attribute.
      void validateRpd8s12()
      Give blind visitors additional options to skip long lists of links.
      void validateRpd8s13()
      At the top of pages with many topics, provide a page index with links to navigate to the different topics.
      void validateRpd8s14()
      Links on websites should not automatically open new windows without warning.
      void validateRpd8s15()
      Do not open any new windows automatically, unless the location of the link contains useful information that may be necessary during an important uninterruptible process.
      void validateRpd8s16()
      Links to e-mail addresses: the e-mail address to which the message is addressed must be visible in the link text.
      void validateRpd8s17()
      Links to e-mail addresses: the URL in the href attribute of a link to an e-mail address may only contain the mailto protocol and an e-mail address.
      void validateRpd8s18()
      Do not apply any technical measures to the website to hide an e-mail address from spam robots.
      void validateRpd8s19()
      Be extremely cautious when publishing e-mail addresses of visitors to the website.
      void validateRpd8s2()
      Write clear, descriptive text for links.
      void validateRpd8s20()
      When presenting downloadable files, inform the visitor how to download and then use them.
      void validateRpd8s21()
      Serve files with the correct MIME type.
      void validateRpd8s22()
      Do not automatically open links to downloadable files in a new window.
      void validateRpd8s23()
      Do not intentionally serve downloadable files with an unknown or incorrect MIME type to force the browser to do something.
      void validateRpd8s3()
      Use the minimum amount of text needed to understand where the link leads.
      void validateRpd8s4()
      Provide sufficient information on the destination of a link to prevent unpleasant surprises for the visitor.
      void validateRpd8s5()
      When using client-side script in combination with a link: make the script functionality an expansion of the basic functionality of the link.
      void validateRpd8s6()
      When using client-side script in combination with a link: if the link does not lead to anything, do not confront the visitor without support for client-side script with a non-working link.
      void validateRpd8s7()
      When using client-side script in combination with a link: if necessary, use client-side script as an expansion of server-side functions.
      void validateRpd8s8()
      Links must be easy to distinguish from other text.
      void validateRpd8s9()
      Provide a logical order for the links on the page.
      void validateRpd9s1()
      CSS should be placed in linked files and not mixed with the HTML source code.
      void validateRpd9s2()
      Pages should remain usable if a web browser does not support CSS.
    • Constructor Detail

      • HTML5DutchWebGuidelinesValidator

        public HTML5DutchWebGuidelinesValidator()
    • Method Detail

      • getName

        public String getName()
        Returns:
        the name of the validator
      • addError

        protected void addError​(ValidationError.Type errorType,
                                int line,
                                int column,
                                String key)
        Add an error to the list of errors using our message resources.
        Overrides:
        addError in class AbstractXMLValidator
        Parameters:
        errorType - type of the error
        line - line where the error occurred
        column - where the error occurred
        key - key to retrieve the value from in the message properties
      • validateRpd1s1

        public void validateRpd1s1()
        Keep structure and design separate as much as possible: use HTML or XHTML for the structure of the site and CSS for its design.
      • validateRpd1s2

        public void validateRpd1s2()
        Build websites according to the "layered construction" principle.
      • validateRpd1s3

        public void validateRpd1s3()
        Do not make the function of the website dependent on optional technology, such as CSS and client-side script: optional technology should complement the information on the site and its use, and should not interfere with access to it if this technology is not supported.
      • validateRpd2s1

        public void validateRpd2s1()
        Use HTML 4.01 or XHTML 1.0 according to the W3C specifications for the markup of websites.
      • validateRpd2s2

        public void validateRpd2s2()
        Do not use any markup which is referred to as deprecated (outmoded) in the W3C specifications.
      • validateRpd2s3

        public void validateRpd2s3()
        When modifying an existing website: only use the Transitional version of HTML 4.01 or XHTML 1.0 if it is not possible or desirable to use the Strict version.
      • validateRpd2s4

        public void validateRpd2s4()
        When building a new website: only use the Strict version of HTML 4.01 or XHTML 1.0.
      • validateRpd2s5

        public void validateRpd2s5()
        Do not use frames on websites. Therefore, also do not use the Frameset version of HTML 4.01 or XHTML 1.0.
      • validateRpd2s6

        public void validateRpd2s6()
        Use CSS Level-2.1 according to the W3C specification for designing websites.
      • validateRpd2s7

        public void validateRpd2s7()
        If client-side script is used, use ECMAScript according to the specification.
      • validateRpd2s8

        public void validateRpd2s8()
        If elements in the HTML hierarchy are to be manipulated, use the W3C DOM according to the specification.
      • validateRpd2s9

        public void validateRpd2s9()
        Build a website according to the Web Content Accessibility Guidelines (WCAG 1.0) of the W3C.
      • validateRpd3s1

        public void validateRpd3s1()
        Write both grammatically correct and descriptive markup.
      • validateRpd3s2

        public void validateRpd3s2()
        Use markup for headings that express the hierarchy of information on the page.
      • validateRpd3s3

        public void validateRpd3s3()
        Do not skip any levels in the hierarchy of headings in the markup.
      • validateRpd3s4

        public void validateRpd3s4()
        Use the p (paragraph) element to indicate paragraphs. Do not use the br (linebreak) element to separate paragraphs.
      • validateRpd3s5

        public void validateRpd3s5()
        Use the em (emphasis) and strong elements to indicate emphasis.
      • validateRpd3s6

        public void validateRpd3s6()
        Use the abbr (abbreviation) element for an abbreviation if confusion could arise concerning its meaning, if the abbreviation plays a very important role in the text or if the abbreviation is not listed in the Dutch dictionary.
      • validateRpd3s7

        public void validateRpd3s7()
        Use the dfn (definition) element to indicate terms that are defined elsewhere in a definition list.
      • validateRpd3s8

        public void validateRpd3s8()
        Use the ins (insertion) and del (deletion) elements to indicate regular changes in the content of a page.
      • validateRpd3s9

        public void validateRpd3s9()
        Avoid using the sup (superscript) and sub (subscript) element if possible.
      • validateRpd3s10

        public void validateRpd3s10()
        Use the cite element for references to people and titles.
      • validateRpd3s11

        public void validateRpd3s11()
        Avoid using the q (quotation) element.
      • validateRpd3s12

        public void validateRpd3s12()
        Use the blockquote element to indicate (long) quotations.
      • validateRpd3s13

        public void validateRpd3s13()
        Use ol (ordered list) and ul (unordered list) elements to indicate lists.
      • validateRpd3s14

        public void validateRpd3s14()
        Use the dl (definition list), the dt (definition term) and dd (definition data) elements to indicate lists with definitions.
      • validateRpd3s15

        public void validateRpd3s15()
        Give meaningful names to id and class attributes.
      • validateRpd4s1

        public void validateRpd4s1()
        Create unique, unchanging URLs.
      • validateRpd4s2

        public void validateRpd4s2()
        Dynamically generated URLs should continue to refer to the same content if content is changed or added.
      • validateRpd4s3

        public void validateRpd4s3()
        Avoid using sessions in URLs.
      • validateRpd4s4

        public void validateRpd4s4()
        Provide redirection to the new location if information is moved.
      • validateRpd4s5

        public void validateRpd4s5()
        Automatic redirection should be carried by the server if possible.
      • validateRpd4s6

        public void validateRpd4s6()
        Use friendly URLs that are readable and recognizable.
      • validateRpd4s7

        public void validateRpd4s7()
        Set up a readable, expandable directory structure.
      • validateRpd5s1

        public void validateRpd5s1()
        In the event that important information is provided through a closed standard, the same information should also be provided through an open standard.
      • validateRpd6s1

        public void validateRpd6s1()
        Each HTML or HTML5 document must begin with a valid doctype declaration. Is considered valid a doctype with "html" name and no attribute.
      • validateRpd6s2

        public void validateRpd6s2()
        Put the content of the page in the HTML source code in order of importance.
      • validateRpd7s1

        public void validateRpd7s1()
        The alt (alternative) attribute should be used on every img (image) and area element and should be provided with an effective alternative text.
      • validateRpd7s2

        public void validateRpd7s2()
        Do not use an alt attribute to display tooltips.
      • validateRpd7s3

        public void validateRpd7s3()
        Do not use d-links on websites. Use of the longdesc (long description) attribute is preferred if the text alternative on the alt attribute is inadequate for understanding the information in the image.
      • validateRpd7s4

        public void validateRpd7s4()
        Images placed in a link should have a non-empty text alternative to enable visitors who do not see the image to follow the link.
      • validateRpd7s5

        public void validateRpd7s5()
        When using image maps, indicate an effective text alternative for both the img element and each area element by means of the alt attribute.
      • validateRpd7s6

        public void validateRpd7s6()
        Decorative images should be inserted via CSS as much as possible. Informative images should be inserted via HTML.
      • validateRpd7s7

        public void validateRpd7s7()
        Applying CSS Image Replacement techniques to essential information is not recommended.
      • validateRpd8s1

        public void validateRpd8s1()
        Do not describe the mechanism behind following a link.
      • validateRpd8s2

        public void validateRpd8s2()
        Write clear, descriptive text for links.
      • validateRpd8s3

        public void validateRpd8s3()
        Use the minimum amount of text needed to understand where the link leads.
      • validateRpd8s4

        public void validateRpd8s4()
        Provide sufficient information on the destination of a link to prevent unpleasant surprises for the visitor.
      • validateRpd8s5

        public void validateRpd8s5()
        When using client-side script in combination with a link: make the script functionality an expansion of the basic functionality of the link.
      • validateRpd8s6

        public void validateRpd8s6()
        When using client-side script in combination with a link: if the link does not lead to anything, do not confront the visitor without support for client-side script with a non-working link.
      • validateRpd8s7

        public void validateRpd8s7()
        When using client-side script in combination with a link: if necessary, use client-side script as an expansion of server-side functions.
      • validateRpd8s8

        public void validateRpd8s8()
        Links must be easy to distinguish from other text.
      • validateRpd8s9

        public void validateRpd8s9()
        Provide a logical order for the links on the page. Use the tabindex attribute to deviate from the standard tab order for links if this order is inadequate for correct use of the page by keyboard users.
      • validateRpd8s10

        public void validateRpd8s10()
        Do not make it impossible to tab to links. Do not remove the focus rectangle surrounding a link or the possibility of focusing on a link.
      • validateRpd8s11

        public void validateRpd8s11()
        Avoid using the Access key attribute. If the decision is nevertheless made to apply this attribute, only use it on links that remain unchanged throughout the site (e.g. main navigation) and limit the shortcut key combinations to numbers.
      • validateRpd8s12

        public void validateRpd8s12()
        Give blind visitors additional options to skip long lists of links.
      • validateRpd8s13

        public void validateRpd8s13()
        At the top of pages with many topics, provide a page index with links to navigate to the different topics.
      • validateRpd8s14

        public void validateRpd8s14()
        Links on websites should not automatically open new windows without warning.
      • validateRpd8s15

        public void validateRpd8s15()
        Do not open any new windows automatically, unless the location of the link contains useful information that may be necessary during an important uninterruptible process.
      • validateRpd8s16

        public void validateRpd8s16()
        Links to e-mail addresses: the e-mail address to which the message is addressed must be visible in the link text.
      • validateRpd8s17

        public void validateRpd8s17()
        Links to e-mail addresses: the URL in the href attribute of a link to an e-mail address may only contain the mailto protocol and an e-mail address.
      • validateRpd8s18

        public void validateRpd8s18()
        Do not apply any technical measures to the website to hide an e-mail address from spam robots.
      • validateRpd8s19

        public void validateRpd8s19()
        Be extremely cautious when publishing e-mail addresses of visitors to the website. Inform the visitor of which information will be published on the site, or do not publish the visitor's e-mail address.
      • validateRpd8s20

        public void validateRpd8s20()
        When presenting downloadable files, inform the visitor how to download and then use them.
      • validateRpd8s21

        public void validateRpd8s21()
        Serve files with the correct MIME type.
      • validateRpd8s22

        public void validateRpd8s22()
        Do not automatically open links to downloadable files in a new window.
      • validateRpd8s23

        public void validateRpd8s23()
        Do not intentionally serve downloadable files with an unknown or incorrect MIME type to force the browser to do something.
      • validateRpd9s1

        public void validateRpd9s1()
        CSS should be placed in linked files and not mixed with the HTML source code.
      • validateRpd9s2

        public void validateRpd9s2()
        Pages should remain usable if a web browser does not support CSS.
      • validateRpd10s1

        public void validateRpd10s1()
        Make sure that the meaning of communicative elements is not expressed only through colour.
      • validateRpd10s2

        public void validateRpd10s2()
        Be consistent with colour use when indicating meaning.
      • validateRpd10s3

        public void validateRpd10s3()
        Make sure there is sufficient brightness contrast between the text and the background colour.
      • validateRpd11s1

        public void validateRpd11s1()
        Use tables to display relational information and do not use them for layout.
      • validateRpd11s2

        public void validateRpd11s2()
        Use the th (table header) to describe a column or row in a table with relational information.
      • validateRpd11s3

        public void validateRpd11s3()
        Group rows with only th (table header) cells with the thead (table head) element. Group the rest of the table with the tbody (table body) element.
      • validateRpd11s4

        public void validateRpd11s4()
        Use the scope attribute to associate table labels (th cells) with columns or rows.
      • validateRpd11s5

        public void validateRpd11s5()
        Use the headers and id attributes to associate table labels (th cells) with individual cells in complex tables.
      • validateRpd11s6

        public void validateRpd11s6()
        Provide abbreviations for table labels (th cells) by means of the abbr (abbreviation) attribute if the content of the table label is so long that repetition in a speech browser could cause irritation.
      • validateRpd11s7

        public void validateRpd11s7()
        Use the caption element or heading markup to provide a heading above a table.
      • validateRpd11s8

        public void validateRpd11s8()
        When modifying an existing website: use CSS for the presentation and layout of web pages, and avoid using tables for layout.
      • validateRpd11s9

        public void validateRpd11s9()
        When using tables for layout: do not use more than one table and use CSS for the design of this table as much as possible.
      • validateRpd11s10

        public void validateRpd11s10()
        When using tables for layout: do not apply any accessibility markup.
      • validateRpd12s1

        public void validateRpd12s1()
        Do not use frames on websites. This applies to regular frames in framesets as well as iframes.
      • validateRpd13s1

        public void validateRpd13s1()
        Use the label element to explicitly associate text with an input field in a form.
      • validateRpd13s2

        public void validateRpd13s2()
        Use the tabindex attribute to deviate from the standard tab order on form fields if this order is inadequate for correct use of the form by keyboard users.
      • validateRpd13s3

        public void validateRpd13s3()
        Apply grouping of input fields by means of the fieldset element.
      • validateRpd13s4

        public void validateRpd13s4()
        Avoid automatic redirection during interaction with forms.
      • validateRpd13s5

        public void validateRpd13s5()
        Do not use client-side script or forms as the only way of accessing information on the site.
      • validateRpd13s6

        public void validateRpd13s6()
        Do not confront a visitor with a non-working form if optional technologies "such as CSS or client-side script" are not supported by the browser.
      • validateRpd13s7

        public void validateRpd13s7()
        Use CSS sparingly for input fields and form buttons.
      • validateRpd13s8

        public void validateRpd13s8()
        If a visitor has to provide personal data, let him know what will be done with this data, e.g. in the form of a privacy statement.
      • validateRpd13s9

        public void validateRpd13s9()
        Do not ask a visitor to provide more information by means of a form than necessary for the purpose of the form. Keep forms as short as possible and limit the mandatory completion of form fields.
      • validateRpd13s10

        public void validateRpd13s10()
        Indicate which fields are mandatory and which are optional.
      • validateRpd13s11

        public void validateRpd13s11()
        Provide alternate contact options, such as address details, telephone number or e-mail addresses, if available.
      • validateRpd13s12

        public void validateRpd13s12()
        Let the visitor know what will be done with the form when it is sent.
      • validateRpd13s13

        public void validateRpd13s13()
        Give the visitor the option of saving his reply.
      • validateRpd13s14

        public void validateRpd13s14()
        Once the visitor has completed and sent the form, send him confirmation that his message has been received by the recipient (autoreply).
      • validateRpd13s15

        public void validateRpd13s15()
        Before displaying complex forms, give the visitor an impression of the size of the form.
      • validateRpd13s16

        public void validateRpd13s16()
        List documents which the visitor might need while completing the form beforehand.
      • validateRpd13s17

        public void validateRpd13s17()
        Provide forms with instructions for the visitor if necessary, particularly for the applicable input fields.
      • validateRpd13s18

        public void validateRpd13s18()
        Do not add any reset buttons to forms.
      • validateRpd14s1

        public void validateRpd14s1()
        Do not use client-side script for essential functionality on web pages, unless any lack of support for these scripts is sufficiently compensated by HTML alternatives and/or server-side script.
      • validateRpd15s1

        public void validateRpd15s1()
        The visitor should have the option of choosing between languages on every page of the site.
      • validateRpd15s2

        public void validateRpd15s2()
        Links for language choice should have a clear and consistent place in the navigation of the site.
      • validateRpd15s3

        public void validateRpd15s3()
        Use fully written out (textual) links to the language versions.
      • validateRpd15s4

        public void validateRpd15s4()
        Write links to language versions in their corresponding languages.
      • validateRpd15s5

        public void validateRpd15s5()
        Do not use associations with nationalities for language choice.
      • validateRpd15s6

        public void validateRpd15s6()
        Specify the base language of a page in the markup.
      • validateRpd15s7

        public void validateRpd15s7()
        Indicate language variations in the content of pages in the markup.
      • validateRpd16s1

        public void validateRpd16s1()
        Specify the character set for web pages.
      • validateRpd16s2

        public void validateRpd16s2()
        Specify the UTF-8 character set.
      • validateRpd16s3

        public void validateRpd16s3()
        Also specify the character set by means of HTTP headers, if possible.
      • validateRpd16s4

        public void validateRpd16s4()
        Use (at least) the meta element to specify the character set and place this element as high as possible in the head section of the markup.
      • validateRpd18s1

        public void validateRpd18s1()
        Use a unique, descriptive title for each page.
      • validateRpd18s2

        public void validateRpd18s2()
        Write short, concise text, in which the main message is mentioned at the top of the page.
      • validateRpd22s1

        public void validateRpd22s1()
        Use language that the visitor understands: limit the use of jargon, difficult terms and abbreviations.
      • validateRpd22s2

        public void validateRpd22s2()
        Give visitors an escape route: possibilities to continue if they get stuck. Escape routes include useful links, being able to use the back button, a search function, and being able to correct input errors immediately.
      • validateRpd22s3

        public void validateRpd22s3()
        Don't make visitors guess: provide information on how they can correct errors they have made. Take into account the most common errors.
      • validateRpd22s4

        public void validateRpd22s4()
        Make modified error pages "for errors such as dead links (404 Not Found)" where the visitor is given options for continuing within the site.
      • validateRpd22s5

        public void validateRpd22s5()
        In the event of an error message as a result of sending a form, give the visitor the option of correcting the error in the form immediately and don't make him be dependent on the use of the back button.
      • validateRpd22s6

        public void validateRpd22s6()
        When implementing a search engine on the website: use "smart" search technology that takes into account spelling errors, similar search terms, terms in singular or plural form, etc.
      • validateRpd22s7

        public void validateRpd22s7()
        Provide a well-organised list of the most relevant search results. If too many search results are provided, it takes visitors too long to find the desired information. Give visitors the option of entering search criteria, or sorting the search results.
      • validateRpd22s8

        public void validateRpd22s8()
        Give visitors the option of reporting errors on the site.
      • validateRpd22s9

        public void validateRpd22s9()
        Use colours, icons and textual explanations to draw the visitor's attention to an error message and explain the problem.
      • validateRpd22s10

        public void validateRpd22s10()
        Give visitors the option of finding information in alternate ways. For example, by providing a sitemap, search functions, or by means of a request by e-mail, letter or telephone.