character-encoding-001 HTTP charset declaration http #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org Setting the HTTP header charset declaration will affect the encoding of a page. character-encoding-002 UTF-8 BOM #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A page with no encoding declarations, but with a UTF-8 signature will be recognized as UTF-8. character-encoding-003 UTF-16LE BOM #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A page with no encoding declarations, but with a UTF-16 little-endian BOM will be recognized as UTF-16. character-encoding-004 UTF-16BE BOM #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A page with no encoding declarations, but with a UTF-16 big-endian BOM will be recognized as UTF-16. character-encoding-006 XML declaration (html) #charset DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] Setting the encoding in the XML declaration will not affect the encoding of a page served as text/html. character-encoding-007 meta Content-Type charset declaration #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org Setting the encoding in the meta Content-Type element will affect the encoding of a page served as text/html. character-encoding-009 HTML5 meta charset declaration #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org Setting the encoding in the HTML5 meta charset element will affect the encoding of an HTML5 page. character-encoding-014 charset on an a element #non-conforming-features DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] A link to a page using the a element with a charset attribute will cause a page with no other encoding information to be rendered using the encoding in the charset attribute. character-encoding-016 HTTP vs meta Content-Type #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org The HTTP header has a higher precedence than a meta Content-Type encoding declaration. character-encoding-018 HTTP vs HTML5 meta #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org The HTTP header has a higher precedence than an HTML5 meta encoding declaration. character-encoding-022 HTTP vs XML declaration (html) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] The HTTP header has a higher precedence than an XML declaration. character-encoding-024 XML declaration vs meta Content-Type (html) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] The XML declaration has a higher precedence than a meta Content-Type encoding declaration. character-encoding-026 XML declaration vs HTML5 meta (non-xhtml5) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] The HTTP header has a higher precedence than an HTML5 meta encoding declaration. character-encoding-027 meta Content-Type, then HTML5 meta #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A meta Content-Type encoding declaration has a higher precedence than a following HTML5 meta encoding declaration. character-encoding-030 HTML5 meta, then meta Content-Type #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org An HTML5 meta encoding declaration has a higher precedence than a following meta Content-Type encoding declaration. character-encoding-034 HTTP vs UTF-8 BOM (HTML) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A character encoding set in the HTTP header has higher precedence than the UTF-8 signature. character-encoding-035 HTTP vs UTF-16LE BOM (html) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A character encoding set in the HTTP header has higher precedence than the UTF-16LE BOM. character-encoding-036 HTTP vs UTF-16BE BOM (html) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A character encoding set in the HTTP header has higher precedence than the UTF-16BE BOM. character-encoding-037 UTF-8 BOM vs meta Content-Type (html) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A page with a UTF-8 BOM will be recognized as UTF-8 even if the meta Content-Type declares a different encoding. character-encoding-038 UTF-8 BOM vs HTML5 meta (html5) #determining-the-character-encoding DUMMY Richard Ishida mailto:ishida@w3.org A page with a UTF-8 BOM will be recognized as UTF-8 even if the meta Content-Type declares a different encoding. escapes-001 hex ncr #character-references DUMMY Richard Ishida mailto:ishida@w3.org A hexadecimal numeric character reference produces the intended character. escapes-002 decimal ncr #character-references DUMMY Richard Ishida mailto:ishida@w3.org A decimal numeric character reference produces the intended character. escapes-003 lower-case entity #character-references DUMMY Richard Ishida mailto:ishida@w3.org A lower case character entity reference produces the intended character. escapes-004 upper-case entity #character-references DUMMY Richard Ishida mailto:ishida@w3.org An upper case character entity reference produces the intended character. escapes-005 supplementary character #character-references DUMMY Richard Ishida mailto:ishida@w3.org A hexadecimal numeric reference containing the Unicode code point of a supplementary character produces the intended character. escapes-006 hex ncr outside range of charset #character-references DUMMY Richard Ishida mailto:ishida@w3.org An hexadecimal numeric reference containing the Unicode code point of a character which is not supported by the current character encoding still produces the intended character. escapes-007 decimal ncr outside range of charset #character-references DUMMY Richard Ishida mailto:ishida@w3.org A decimal numeric reference containing the Unicode code point of a character which is not supported by the current character encoding still produces the intended character. escapes-008 character entity outside range of charset #character-references DUMMY Richard Ishida mailto:ishida@w3.org A character entity reference for a Unicode code point which is not supported by the current character encoding still produces the intended character. escapes-009 hex ncr for C1 position of euro sign #character-references DUMMY Richard Ishida mailto:ishida@w3.org A hexadecimal numeric reference containing the code point for the euro in the Windows 1252 code page should produce a euro sign. escapes-010 hex ncr for C1 position of euro sign #character-references DUMMY Richard Ishida mailto:ishida@w3.org A hexadecimal numeric reference containing the code point for the euro in the Windows 1252 code page should produce a euro sign. language-declarations-001 lang attribute in html tag #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org The browser will recognize a language declared in a lang attribute on the html tag. language-declarations-002a xml:lang attribute in html tag #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org [Exploratory test] The browser will not recognize a language declared in a xml:lang attribute on the html tag. language-declarations-003 HTTP header #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org The browser will recognize a language declared in the HTTP header, when there is no internal language declaration. language-declarations-004 Content-Language meta element #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org The browser will recognize a language declared in a meta element in the head using http-equiv='Content-Language' content='..' (with a single language tag value), when there is no other language declaration. language-declarations-009 HTTP header and html lang #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If there is a conflict between the language declarations in the HTTP header and the html element using lang, the UA will recognize the language declared in the html element. language-declarations-011 HTTP header and meta element #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If there is a conflict between the language declarations in the HTTP header and the Content-Language meta element, the UA will recognize the language declared in the meta element. language-declarations-012 html lang and meta elements #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If there is a conflict between the language declared using lang in the html element and that in the meta element, the UA will recognize the language declared in the html element. language-declarations-018 lang="..." vs lang="" #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If an element contains a language attribute with an empty value, the value of a language attribute higher up the document tree will no longer be applied to the content of that element. language-declarations-014 lang="" vs HTTP #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If the HTTP header contains a language declaration but the html element uses an empty lang attribute, the UA will not recognize the language declared in the HTTP header. language-declarations-015 lang="" vs meta Content-Language #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org If the meta Content-Language element contains a language declaration but the html element uses an empty lang attribute, the UA will not recognize the language declared in the meta Content-Language element. language-declarations-005 First of multiple languages in HTTP header (html5) #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org The UA will not recognize a language declaration in the HTTP Content Language header where more than one language is declared. language-declarations-007 First of multiple languages in Content-Language meta element #the-lang-and-xml:lang-attributes DUMMY Richard Ishida mailto:ishida@w3.org The UA will not recognize a language declaration in the Content-Language meta element where more than one language is declared. bidi-markup-011 directional type, ltr context, hebrew #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a left-to-right context, without markup, styling or special characters, a sequence of Hebrew characters and spaces will progress from right to left. bidi-markup-012 directional type, ltr context, arabic #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a left-to-right context, without markup, styling or special characters, a sequence of Arabic characters and spaces will progress from right to left. bidi-markup-013 directional type, ltr context, hebrew in english #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a left-to-right context, without markup, styling or special characters, a sequence of Hebrew characters and spaces will progress from right to left when embedded in a left-to-right script. bidi-markup-014 directional type, rtl context, english #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a right-to-left context, without markup, styling or special characters, a sequence of English characters and spaces will progress from left to right. bidi-markup-015 directional type, rtl context, english in arabic #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a right-to-left context, without markup, styling or special characters, a sequence of English characters and spaces will progress from left to right when embedded in a right-to-left script. bidi-markup-016 directional type, rtl context, english in hebrew #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a right-to-left context, without markup, styling or special characters, a sequence of English characters and spaces will progress from left to right when embedded in a right-to-left script. bidi-markup-025 numbers, european #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org A number takes on the direction of the surrounding text. bidi-markup-026 numbers, arabic #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org A number using Arabic digits takes on the direction of the surrounding text. bidi-markup-001 paragraphs #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When the html tag sets dir to rtl, (a) directional runs in a paragraph are ordered right-to-left, (b) the paragraph is right-aligned on the page. bidi-markup-002 tables #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When the html tag sets dir to rtl, (a) directional runs in a table are ordered right-to-left, (b) columns run right-to-left, (c) text is right-aligned within cells, and (d) the table is right-aligned on the page. bidi-markup-003 ltr context, rtl p #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a paragraph in a ltr context, (a) directional runs in a paragraph are ordered right-to-left, (b) the paragraph is right-aligned on the page. bidi-markup-004 ltr context, rtl table #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a table in a ltr context, (a) directional runs in a table are ordered right-to-left, (b) columns run right-to-left, (c) text is right-aligned within cells, and (d) the table is left-aligned on the page. bidi-markup-005 rtl context, ltr p #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a paragraph in a rtl context, (a) directional runs in a paragraph are ordered left-to-right, (b) the paragraph is left-aligned on the page. bidi-markup-006 rtl context, ltr table #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a table in a rtl context, (a) directional runs in a table are ordered left-to-right, (b) columns run left-to-right, (c) text is left-aligned within cells, and (d) the table is right-aligned on the page. bidi-markup-007 ltr page, rtl div, p #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a div in a ltr context, for paragraphs in the div (a) directional runs are ordered right-to-left, (b) the paragraphs are right-aligned on the page. bidi-markup-008 ltr page, rtl div, table #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a div in a ltr context, for tables in the div (a) directional runs in a table are ordered right-to-left, (b) columns run right-to-left, (c) text is right-aligned within cells, and (d) the table is right-aligned on the page. bidi-markup-009 rtl page, ltr div, p #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a div in a rtl context, for paragraphs in the div (a) directional runs are ordered left-to-right, (b) the paragraphs are left-aligned on the page. bidi-markup-010 rtl page, ltr div, table #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org When dir="rtl" is added to a div in a rtl context, for tables in the div (a) directional runs in a table are ordered left-to-right, (b) columns run left-to-right, (c) text is left-aligned within cells, and (d) the table is left-aligned on the page. bidi-markup-029 ordered and unordered lists #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a rtl context, all list items should start from the right, regardless of the direction of the script in the list item. bidi-markup-030 dl lists #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a rtl context, all list items should start from the right, regardless of the direction of the script in the list item. bidi-markup-017 base direction, ltr context #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a left-to-right context, without markup, styling or special characters, a sequence of directional runs will progress from left to right. bidi-markup-018 base direction, rtl context #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a right-to-left context, without markup, styling or special characters, a sequence of directional runs will progress from right-to-left. bidi-markup-019 neutral in embedded rtl level #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a ltr context, an inline element with dir set to rtl will produce an embedded directional context that is applied to neutral characters. bidi-markup-020 neutral in embedded ltr level #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a rtl context, an inline element with dir set to ltr will produce an embedded directional context that is applied to neutral characters. bidi-markup-021 neutral associated with rlm entity #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a ltr context, an rlm entity will give a right-to-left direction to a neutral character. bidi-markup-022 neutral associated with rlm entity #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a rtl context, an lrm entity will give a left-to-right direction to a neutral character. bidi-markup-023 neutral associated with rlm NCR #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a ltr context, an NCR representing the RLM character will give a right-to-left direction to a neutral character. bidi-markup-024 neutral associated with rlm NCR #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org In a rtl context, an NCR representing the RLM character will give a left-to-right direction to a neutral character. bidi-markup-027 bdo, dir ltr #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org The bdo element with dir set to ltr causes all contained text to ignore the bidirectional algorithm and displays all characters from left to right. bidi-markup-028 bdo, dir rtl #the-dir-attribute DUMMY Richard Ishida mailto:ishida@w3.org The bdo element with dir set to rtl causes all contained text to ignore the bidirectional algorithm and displays all characters from right to left. bidi-html5-001 BDI: has dir=auto by default #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'The dir global attribute defaults to auto on this element (it never inherits from the parent element like with other elements).' bidi-html5-002 BDI: neutral when BR #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, a BDI containing a BR (which serves as a paragraph break in the content of the BDI) must not serve as a paragraph break in the content around the BDI. bidi-html5-003 BDI: neutral when contains LRO or RLO without PDF #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, if a BDI contains LRO or RLO characters lacking a matching PDF, these must not affect the visual ordering of the content outside the BDI. bidi-html5-004 BDI: neutral when nested #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' This must apply when a BDI is nested within a BDI. bidi-html5-005 BDI: neutral when number #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-006 BDI: paragraph-level container #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, under no circumstances should any part of the content outside a BDI be visually reordered inside the BDI's content. bidi-html5-007 BDI: neutral to following letter #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-008 BDI: neutral to immediately following letter #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-009 BDI: neutral to preceding letter #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-010 BDI: neutral to immediately preceding letter #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-011 BDI: neutral to following number #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-012 BDI: neutral to immediately following number #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' bidi-html5-013 BDI: neutral to surrounding letters #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, regardless of its content and its dir attribute (if any), a BDI will not prevent a strongly RTL (or LTR) character preceding it from forming a single directional run with another strongly RTL (LTR) character following it. bidi-html5-014 BDI: neutral when wrapped #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Obviously, this should hold even if the BDI's content is wrapped over more than one line. A single character (U+FFFC or otherwise) obviously never gets wrapped over more than one line, but we still expect the part of the content preceding the BDI, if any, that is displayed on the same line as some part of the BDI to be ordered the same as it would be if that part of the BDI were replaced with U+FFFC. Similarly, we expect the part of the content following the BDI, if any, that is displayed on the same line as some part of the BDI to be ordered the same as it would be if that part of the BDI were replaced with U+FFFC. bidi-html5-015 BDI: paragraph-level container #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the contents of a bdi element, user agents must treat the element as a paragraph-level container.' Thus, under no circumstances should the content outside a BDI affect the visual ordering of the BDI's content. bidi-html5-016 BDI: neutral to another BDI #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, when a BDIs contains text of the same strong direction as another BDI following it, the two must not form a directional run as would be the case if the BDIs were just SPANs. bidi-html5-017 BDI: neutral to another immediately following BDI #the-bdi-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'For the purposes of applying the bidirectional algorithm to the paragraph-level container that a bdi element finds itself within, the bdi element must be treated like a U+FFFC OBJECT REPLACEMENT CHARACTER.' Thus, when a BDIs contains text of the same strong direction as another BDI following it, the two must not form a directional run as would be the case if the BDIs were just SPANs, even if the two BDIs are not separated by anything at all. bidi-html5-018 BR separates bidi paragraph #the-br-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com A br element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. bidi-html5-019 BR in inline ancestors #the-br-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com 'A br element should separate paragraphs for the purposes of the Unicode bidirectional algorithm.' 'If an inline element is broken around a bidi paragraph boundary (e.g. if split by a block or forced paragraph break), then the bidi control codes corresponding to the end of the element are added before the interruption and the codes corresponding to the start of the element are added after it. (In other words, any embedding levels or overrides started by the element are closed at the paragraph break and reopened on the other side of it.)' bidi-html5-020 newline in pre separates bidi paragraphs #the-pre-element DUMMY HTML5 bidi test WG mailto:html5bidi@googlegroups.com A newline in a pre element should separate paragraphs for the purposes of the Unicode bidirectional algorithm. bidi-html5-021 newline in