Warning:
This wiki has been archived and is now read-only.
SC3-1-1-html
From Automated WCAG Monitoring Community Group
(Redirected from SC311-html)
This test belongs to 3.1.1 Language of Page.
Status
Previous versions
Contents
Description
This test checks that the primary language of the web content can be programmatically determined.
Background
- H57: Using language attributes on the html element
- eGovMon test for H57
- BCP 47: Tags for the Identification of Languages
Assumptions
- The comparison of language codes does not look for exact matches. Technique H57 states: "Use of the primary code is important for this technique." which means that region subtags can be ignored in the comparison, i.e. "en-GB" is the same as "en".
- This test checks the
lang
attribute of the<html>
element. The xml:lang attribute is not taken into account because tests have shown, that xml:lang is ignored by screenreaders. (Both Jaws 15 with FF and IE and NVDA with FF go by lang attribute, xml:lang is ignored.) Thexml:lang
attribute is checked by a separate test: SC3-1-1-xml-lang.
Test properties
Property | Possible values |
---|---|
Test name | Primary language of page |
Success Criterion | 3.1.1 Language of Page |
Test mode | automatic |
Test environment | DOM |
Test subject | single web page |
User expertise and skills | |
User profile |
Test procedure
Selector
Test mode:
earl:automatic
Select the html
element.
Step 1
Test mode:
earl:automatic
If lang
attribute exists:
L1 = value of lang
attribute.
Continue with #Step2.
elseif neither lang
nor xml:lang
are specified,
return
Property | Value |
---|---|
TestCase | SC311-html |
Identifier | SC311-html-fail1 |
Outcome | failed |
ErrorMessage | No language attribute found. |
Pointer | position |
Info |
else (only xml:lang
exists)
Do nothing. (This case is covered by SC3-1-1-xml-lang.)
Step 2
Test mode:
earl:automatic
Compare L1 to BCP 47.
If L1 is not on the list, return
Property | Value |
---|---|
TestCase | SC311-html |
Identifier | SC311-html-fail2 |
Outcome | failed |
ErrorMessage | Unknown language code. |
Pointer | position |
Info | L1 |
Note that this step also fails if L1 contains only whitespace or is empty.
Else, return
Property | Value |
---|---|
TestCase | SC311-html |
Identifier | SC311-text-pass1 |
Outcome | passed |
Pointer | position |
Info |