[i18n-discuss] Internationalisation review checklist (#24)

r12a has just created a new issue for https://github.com/w3c/i18n-discuss:

== Internationalisation review checklist ==
# Internationalisation review checklist
Check marks indicate relevant issues. Add comments to describe conformance.

This checklist was created <a href="https://www.w3.org/TR/international-specs/#ghChecklist">here</a>.

## Language
### Language basics
- [ ] It should be possible to associate a language with any piece of <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_localizable_text">localizable text</a> or <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_natural_language">natural language</a> content. <a href="https://www.w3.org/TR/international-specs/#lang_basics_1" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
- [ ] Where possible, there should  be a way to label <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_natural_language">natural language</a> changes in inline text. <a href="https://www.w3.org/TR/international-specs/#lang_basics_inline" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
- [x] Consider whether it is useful to express the <a href="https://w3c.github.io/bp-i18n-specdev/#sec_lang_meta">intended linguistic audience</a> of a resource, in addition to specifying the language used for <a href="https://w3c.github.io/bp-i18n-specdev/#sec_text_processing_lang">text processing</a>. <a href="https://www.w3.org/TR/international-specs/#lang_basics_meta" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] A language declaration that indicates the <a data-link-type="dfn" data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_text_processing_language">text-processing language</a> for a range of text must associate  a single language  value with a specific range of text. <a href="https://www.w3.org/TR/international-specs/#tp_lang_values" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Use the HTML <code class="kw" translate="no">lang</code> and XML <code class="kw" translate="no">xml:lang</code> language attributes where appropriate to identify the <a href="https://w3c.github.io/bp-i18n-specdev/#sec_text_processing_lang">text processing language</a>, rather than creating a new attribute or mechanism. <a href="https://www.w3.org/TR/international-specs/#lang_attribute_xml" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] It should be possible to associate a  metadata-type language declaration (which indicates the intended use of the resource rather than the language of a specific range of text)  with multiple language  values. <a href="https://www.w3.org/TR/international-specs/#metadata_lang_values" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Attributes that express the language of external resources should not use the HTML <code class="kw" translate="no">lang</code> and XML <code class="kw" translate="no">xml:lang</code> language attributes, but should use a different attribute when they represent metadata (which indicates the intended use of the resource rather than the language of a specific range of text). <a href="https://www.w3.org/TR/international-specs/#metadata_not_lang" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Defining language values
1. [ ] Values for language declarations must use BCP 47. <a href="https://www.w3.org/TR/international-specs/#lang_use_bcp47" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Refer to BCP 47, not to RFC 5646. <a href="https://www.w3.org/TR/international-specs/#lang_bcp_not_rfc" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Be specific about what level of conformance you expect for language tags: BCP 47 defines two levels of conformance, "valid" and "well-formed". <a href="https://www.w3.org/TR/international-specs/#lang_values_specificity" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Specifications may require implementations to check if language tags are "valid", but in most circumstances should only require that the language tags be "well-formed". <a href="https://www.w3.org/TR/international-specs/#lang_checking_well_formed" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Specifications should require content and content authors to use "valid" language tags. <a href="https://www.w3.org/TR/international-specs/#lang_values_valid" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Reference BCP47 for language tag matching. <a href="https://www.w3.org/TR/international-specs/#lang_matching_bcp" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Declaring  language at the resource level
1. [ ] The specification should indicate how to define the default text-processing language for the resource as a whole. <a href="https://www.w3.org/TR/international-specs/#lang_whole_res" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Content within the resource should inherit the language of the text-processing declared at the resource level, unless it is specifically overridden. <a href="https://www.w3.org/TR/international-specs/#lang_inherit" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Consider whether it is necessary to have separate declarations to indicate the text-processing language versus metadata about the expected use of the resource. <a href="https://www.w3.org/TR/international-specs/#lang_tp_meta" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] If there is only one language declaration for a resource, and it has more than one language tag as a value, it must be possible to identify the default text-processing language for the resource. <a href="https://www.w3.org/TR/international-specs/#lang_mixing" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Establishing the language of a content block
1. [ ] By default, blocks of content should inherit any text-processing language set for the resource as a whole. <a href="https://www.w3.org/TR/international-specs/#lang_block_inherit" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] It should be possible to indicate a change in language for blocks of content where the language changes. <a href="https://www.w3.org/TR/international-specs/#lang_block_change" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Establishing the language of inline runs
1. [ ] It should be possible to indicate language for spans of inline text where the language changes. <a href="https://www.w3.org/TR/international-specs/#lang_inline_spans" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

## Text direction
### Basic requirements
1. [ ] It must be possible to indicate base direction for each individual paragraph-level item of <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_natural_language">natural language</a> text that will be read by someone. <a href="https://www.w3.org/TR/international-specs/#dir_paragraphs" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] It must be possible to indicate base direction changes for embedded runs of inline bidirectional text for all <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_localizable_text">localizable text</a>. <a href="https://www.w3.org/TR/international-specs/#dir_inline" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Annotating right-to-left text must require the minimum amount of effort for people who work natively with right-to-left scripts. <a href="https://www.w3.org/TR/international-specs/#dir_reasonable" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Background information
1. [ ] Do not assume that direction can be determined from language information. <a href="https://www.w3.org/TR/international-specs/#bidi_lang" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Base direction values
1. [ ] Values for the default base direction should include left-to-right, right-to-left, and auto. <a href="https://www.w3.org/TR/international-specs/#bidi_values" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Handling direction in markup
1. [ ] The spec should  indicate how to define a default base direction for the resource as a whole, ie. set the overall base direction. <a href="https://www.w3.org/TR/international-specs/#bidi_whole_res" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] The  default base direction, in the absence of other information, should be LTR. <a href="https://www.w3.org/TR/international-specs/#bidi_res_default" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] The content author must be able to indicate parts of the text where the base direction changes. At the block level, this should be achieved using attributes or metadata, and should not rely on Unicode control characters. <a href="https://www.w3.org/TR/international-specs/#bidi_block_change" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] It must be possible to also set the direction for content fragments to <code class="kw" translate="no">auto</code>. This means that the base direction will be determined by examining the content itself. <a href="https://www.w3.org/TR/international-specs/#bidi_block_auto" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] If the overall base direction is set to <code class="kw" translate="no">auto</code> for plain text, the direction of content paragraphs should be determined on a paragraph by paragraph basis. <a href="https://www.w3.org/TR/international-specs/#bidi_block_para" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] To indicate the sides of a block of text  relative to the start and end of its contained lines,  use 'block-start' and 'block-end', rather than 'top' and 'bottom'. <a href="https://www.w3.org/TR/international-specs/#bidi_block_befaft" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] To indicate the start/end of a line  you should use 'start' and 'end', or 'inline-start' and 'inline-end', rather than 'left' and 'right'. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_start_end" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Provide dedicated attributes for control of base direction and bidirectional overrides; do not rely on the user applying style properties to arbitrary markup to achieve bidi control. <a href="https://www.w3.org/TR/international-specs/#bidi_dedicated_attr" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Handling base direction for strings
1. [ ] Provide metadata constructs that can be used to indicate the base direction of any <a data-type="dfn" href="https://www.w3.org/TR/i18n-glossary/#def_natural_language">natural language</a> string. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_metadata" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Specify that consumers of strings should use  heuristics, preferably based on the Unicode Standard first-strong algorithm, to detect the base direction of a string except where metadata is provided. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_heuristics" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Where possible, define a field to  indicate the default direction for all strings in a given resource or document. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_default" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Do NOT assume that a creating a document-level default without the ability to change direction for any string is sufficient. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_metadata_and_default" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] If metadata is not available due to legacy implementations and cannot otherwise be provided, specifications <em class="rfc2119">MAY</em> allow a base direction to be interpolated from available language metadata. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_script_tag" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Specifications <em class="rfc2119">MUST NOT</em> require the production or use of paired bidi controls. <a href="https://www.w3.org/TR/international-specs/#bidi_strings_paired_controls" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_

### Setting base direction for inline or substring text
1. [ ] It must be possible to indicate spans of inline text where the base direction changes. If markup is available, this is the preferred method. Otherwise your specification must require that Unicode control characters are recognized by the receiving application, and correctly implemented. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_change" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] It must be possible to also set the direction for a span to auto. This means that the base direction will be determined by examining the content itself. A typical approach here would be to set the direction based on the first strong directional character outside of any markup. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_auto" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] If users use Unicode bidirectional control characters, the isolating RLI/LRI/FSI with PDI characters must be supported by the application and recommended (rather than RLE/LRE with PDF) by the spec. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_rli" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] Use of RLM/LRM should be appropriate, and expectations of what those controls can and cannot do should be clear in the spec. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_rlm" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] For markup, provide dedicated attributes for control of base direction and bidirectional overrides; do not rely on the user applying style properties to arbitrary markup to achieve bidi control. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_dedicated_attr" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] For markup, allow bidi attributes on all inline elements in markup that contain text. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_all_elems" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_
1. [ ] For markup, provide attributes that allow the user to (a) create an embedded base direction or (b) override the bidirectional algorithm altogether; the attribute should allow the user to set the direction to LTR or RTL or the aforementioned Auto in either of these two scenarios. <a href="https://www.w3.org/TR/international-specs/#bidi_inline_embed" class="checklistMore" target="_blank">more</a><br>    _Comments_go_here_


Please view or discuss this issue at https://github.com/w3c/i18n-discuss/issues/24 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 6 May 2022 13:56:12 UTC