-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I18N Self-review #38
Comments
@aphillips,@r12a : comments? |
The link to the Audiobook Profile seems broken? |
Oops… sorry. I have changed the reference.
Thanks!
|
Thanks @iherman! (I fixed some other broken links I noticed while reading the self review.) |
@iherman I just fixed some links to the pub-manifest spec (there were typos in the URL). |
@xfq the eagle-eye:-) |
I think that this is applicable (you may have a book title that is multilingual), but there is no way to achieve it other than using HTML markup, right? |
Well... there is no such thing as inline text in the manifest, that is what misled me. But yes, it may be possible to imagine a multilingual book title, but that would indeed require HTML markup. Although not exactly the same, but the book title's item is defined as a sequence of literals, i.e., it is possible to add several titles. The main reason of having this is to allow for titles in different languages to co-exist in the manifest. That can be done without any problems. |
I have reviewed the open issues from the I18N horizontal review of this spec and all of them appear to have been addressed to our satisfaction. Thank you for your support. Issues: https://github.com/w3c/i18n-activity/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3Awpub |
Thanks @aphillips |
Short i18n review checklist is here. The relevant documents are:
The second document is largely based on the first, and adds comparatively very little; these additions are all irrelevant in terms of internationalization.
Note, also, that the first document was originally developed under the name "Web Publication" in a separate repository, i.e., the earlier issues referred to are in the https://github.com/w3c/wpub repository.
Self test
(Only the relevant "sub" forms below have been copied from the i18n form. Other entries in that form are non-applicable.)
If the spec (or its implementation) contains any natural language text that will be read by a human (this includes error messages or other UI text, JSON strings, etc, etc),
It should be possible to associate a language with any piece of natural language text that will be read by a user. more
Where possible, there should be a way to label natural language changes in inline text. more
N/A (Not Applicable)
Consider whether it is useful to express the intended linguistic audience of a resource, in addition to specifying the language used for text processing. more
See the global publication language tag
A language declaration that indicates the text processing language for a range of text must associate a single language value with a specific range of text. more
The language tag can be set both globally and on individual items
Use the HTML
lang
and XMLxml:lang
language attributes where appropriate to identify the text processing language, rather than creating a new attribute or mechanism. moreN/A (Not Applicable) (the mechanism is inherited from JSON-LD)
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. more
There is a separate (global and local) marker for the language used in the manifest, and another one for the language of the publication. The latter is a list with decreasing priority for possibly several languages.
(At this moment, ie, 27.08.'19, this is not yet in the draft, but it will be; see the relevant WG resolution.)
Attributes that express the language of external resources should not use the HTML
lang
and XMLxml:lang
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). moreN/A (Not Applicable) (there is no mechanism to set the language of "external" resources; it is up to the individual resources, e.g., HTML files, to do that).
Values for language declarations must use BCP 47. more
Refer to BCP 47, not to RFC 5646. more
Be specific about what level of conformance you expect for language tags. The word "valid" has special meaning in BCP 47. Generally "well-formed" is a better choice.
Reference BCP47 for language tag matching.
The specification should indicate how to define the default text-processing language for the resource as a whole. more
See the global publication language tag.
Content within the resource should inherit the language of the text-processing declared at the resource level, unless it is specifically overridden.
Consider whether it is necessary to have separate declarations to indicate the text-processing language versus metadata about the expected use of the resource. more
N/A (Not Applicable) (only one language is provided)
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. more
N/A (Not Applicable) (there is only one declaration per resource).
By default, blocks of content should inherit any text-processing language set for the resource as a whole. more
N/A (Not Applicable) (there is no concept of a "block of content").
It should be possible to indicate a change in language for blocks of content where the language changes. more
N/A (Not Applicable) (there is no concept of a "block of content").
It should be possible to indicate language for spans of inline text where the language changes. more
N/A (Not Applicable) (JSON(-LD) operates with single texts only.)
It must be possible to indicate base direction for each individual paragraph-level item of natural language text that will be read by someone. more
N/A (Not Applicable) (there is no concept of a "paragraph level text").
It must be possible to indicate base direction changes for embedded runs of inline bidirectional text for all natural language text that will be read by someone. more
N/A (Not Applicable): (JSON(-LD) operates with single texts only.)
Annotating right-to-left text must require the minimum amount of effort for people who work natively with right-to-left scripts. more
See the definition of
inDirection
.Do not assume that direction can be determined from language information. more
Values for the default base direction should include left-to-right, right-to-left, and auto. more
Provide metadata constructs that can be used to indicate the base direction of any natural language string. more
This can be done globally, but not locally. The issue has been discussed elsewhere (see, e.g., RDF Literals and Base Directions); essentially, this specification is based on JSON-LD and cannot unilaterally add new JSON-LD level structures to the manifest. This means that, in this version, this feature cannot be provided. See the discussion in #354, as well as the text in the specification explaining the situation.
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. more
See the discussion in the specification.
Where possible, define a field to indicate the default direction for all strings in a given resource or document. more
Do NOT assume that a creating a document-level default without the ability to change direction for any string is sufficient. more
If metadata is not available due to legacy implementations and cannot otherwise be provided, specifications MAY allow a base direction to be interpolated from available language metadata. more
N/A (Not Applicable)
Specifications MUST NOT require the production or use of paired bidi controls. more
If the spec (or its implementation) allows content authors to produce typographically appealing text, either in its own right, or in association with graphics.
N/A (Not Applicable)
If the spec (or its implementation) allows the user to point into text, creates text fragments, concatenates text, allows the user to select or step through text (using a cursor or other methods), etc.
N/A (Not Applicable)
If the spec (or its implementation) allows searching or matching of text, including syntax and identifiers
N/A (Not Applicable)
If the spec (or its implementation) sorts text
N/A (Not Applicable)
If the spec (or its implementation) captures user input
N/A (Not Applicable)
If the spec (or its implementation) deals with time in any way that will be read by humans and/or crosses time zone boundaries
The two items that use dates (
datePublished
anddateModified
) are defined as ISO8601 data (which should cover all the points below).If the spec (or its implementation) defines markup.
N/A (Not Applicable)
If the spec (or its implementation) deals with names, addresses, time & date formats, etc
(Only names are relevant in the specification.)
Check whether you really need to store or access given name and family name separately. more
Only a single name field is used.
Avoid placing limits on the length of names, or if you do, make allowance for long strings. more
Try to avoid using the labels 'first name' and 'last name' in non-localized contexts. more
Consider whether it would make sense to have one or more extra fields, in addition to the full name field, where users can provide part(s) of their name that you need to use for a specific purpose. more
N/A (Not Applicable) (The class used for a Person has been defined by schema.org, this specification just takes it over. schema.org's Person has a number of relevant term, and this WG does not want to touch that class' definition.
Allow for users to be asked separately how they would like you be addressed when someone contacts them. more
N/A (Not Applicable) (there is no interaction with the user in the creation of this field).
If parts of a person's name are captured separately, ensure that the separate items can capture all relevant information. more
N/A (Not Applicable)
Be careful about assumptions built into algorithms that pull out the parts of a name automatically. more
N/A (Not Applicable)
Don't assume that a single letter name is an initial. more
N/A (Not Applicable)
Don't require that people supply a family name. more
Don't forget to allow people to use punctuation such as hyphens, apostrophes, etc. in names. more
Don't require names to be entered all in upper case. more
Allow the user to enter a name with spaces. more
Don't assume that members of the same family will share the same family name. more
N/A (Not Applicable)
It may be better for a form to ask for 'Previous name' rather than 'Maiden name' or 'née'. more
N/A (Not Applicable)
You may want to store the name in both Latin and native scripts, in which case you probably need to ask the user to submit their name in both native script and Latin-only form, as separate items. more
All "name" fields are defined as (possibly) arrays of names, and each item can have its language tag set.
If the spec (or its implementation) describes a format or data that is likely to need localization.
N/A (Not Applicable)
If the spec (or its implementation) makes any reference to or relies on any cultural norms
N/A (Not Applicable)
The text was updated successfully, but these errors were encountered: