Bug Hunting Session
Bug 39794 - ACCESSIBILITY: Default language for hyperlinks in Writer = zxx or [none] [accessibility]
Summary: ACCESSIBILITY: Default language for hyperlinks in Writer = zxx or [none] [acc...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: accessibility
Depends on:
Blocks: a11y-Windows Hyperlink
  Show dependency treegraph
 
Reported: 2011-08-03 02:29 UTC by Christophe Strobbe
Modified: 2019-12-03 13:57 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
English ODT file with several types of hyperlinks: English (without language identification), English (with language identification), French and Chinese. (13.71 KB, application/vnd.oasis.opendocument.text)
2011-08-03 02:29 UTC, Christophe Strobbe
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Christophe Strobbe 2011-08-03 02:29:16 UTC
Created attachment 49868 [details]
English ODT file with several types of hyperlinks: English (without language identification), English (with language identification), French and Chinese.

When you create a hyperlink in a Writer document (LibreOffice or OpenOffce.org), the language is explicitly set to "zxx" by default (this is shown in the statusbar as "[None]"). In order to identify the language of a hyperlink, you need to explicitly set it by selecting the link and picking a language.

The cause seems to be a default in Writer. When you unpack an ODT file and inspect the file "styles.xml", you will find the following lines:

<style:style style:name="Internet_20_link" style:display-name="Internet link" style:family="text">
<style:text-properties fo:color="#000080" fo:language="zxx" fo:country="none" style:text-underline-style="solid" style:text-underline-width="auto" style:text-underline-color="font-color" style:language-asian="zxx" style:country-asian="none" style:language-complex="zxx" style:country-complex="none"/>
</style:style>

The relevant attributes here are
* fo:language="zxx" fo:country="none" 
* style:language-asian="zxx" style:country-asian="none" 
* style:language-complex="zxx" style:country-complex="none"

It is unclear to me why these defaults exist. I could not find anything in the ODF 1.2 specification that justifies their existence.
Some background from that specification (notably section 16.2<style:style>):

"Styles defined by the <style:style> element use a hierarchical style model. The <style:style> element supports inheritance of formatting properties by a style from its parent style. A parent style is specified by the style:parent-style-name attribute on a <style:style> element."

(Note that the style:style element for hyperlinks does not have a style:parent-style-name attribute.)

"For styles with family text which are applied to elements which are contained in another element that specifies a style with family text, the search continues within the text style that is applied to the nearest ancestor element that specifies a style with family text, and continues in its parent styles."

Based on this I would expect hyperlinks to inherit language properties from the paragraph within which it is contained. In my test document, they would inherit
* fo:language="en" fo:country="GB"
* style:language-asian="zh" style:country-asian="CN"
* style:language-complex="ar" style:country-complex="SA"
(I always enable East-Asian and CTL in Writer, and set the default language for Asian languages to "Chinese (simplified)".)
However, the default hyperlink styles appear to prevent this.

Authors usually forget to set the language of hyperlinks, so Writer should remove the defaults that set the language of hyperlink text to "zxx" / "[None]" (see first XML fragment).

Since language information is essential for conversion to audio (in a screen reader or when converting to an audio book) and to Braille (punctuation and contracted forms are language-dependent), this is an accessibility issue. Hence the "[accessibility]" in the summary field of this bug.
Comment 1 Christophe Strobbe 2011-08-03 06:20:35 UTC
There is a workaround for users who are familiar with styles:
1. In the Styles and Formatting panel (which can be opened with F11), select Character Styles (second button on the little toolbar);
2. Right-click on the style "Internet Link" and select Modify;
3. On the Font tab of Character Style dialog, select the default language for links.
But it would be better if the languages were simply inherited from an ancestor.
Comment 2 Björn Michaelsen 2011-12-23 12:21:27 UTC Comment hidden (obsolete)
Comment 3 sasha.libreoffice 2012-01-08 21:27:16 UTC
reproduced on LibO 3.5.0 beta 1
Comment 4 QA Administrators 2015-02-19 15:43:11 UTC Comment hidden (obsolete)
Comment 5 Christophe Strobbe 2015-03-15 18:33:18 UTC
I rechecked this bug using a freshly installed version of LibreOffice 4.3.6.2 on Windows 7 (32 bits) and I found that the issue is still present. 

The workaround that I described in my second comment still applies.
Comment 6 Robinson Tryon (qubit) 2015-12-10 03:37:50 UTC Comment hidden (obsolete)
Comment 7 QA Administrators 2017-01-03 19:41:35 UTC Comment hidden (obsolete)
Comment 8 QA Administrators 2019-12-03 13:57:45 UTC
Dear Christophe Strobbe,

To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year.

There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present.

If you have time, please do the following:

Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/

If the bug is present, please leave a comment that includes the information from Help - About LibreOffice.
 
If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice.

Please DO NOT

Update the version field
Reply via email (please reply directly on the bug tracker)
Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not 
appropriate in this case)


If you want to do more to help you can test to see if your issue is a REGRESSION. To do so:
1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from http://downloadarchive.documentfoundation.org/libreoffice/old/

2. Test your bug
3. Leave a comment with your results.
4a. If the bug was present with 3.3 - set version to 'inherited from OOo';
4b. If the bug was not present in 3.3 - add 'regression' to keyword


Feel free to come ask questions or to say hello in our QA chat: https://kiwiirc.com/nextclient/irc.freenode.net/#libreoffice-qa

Thank you for helping us make LibreOffice even better for everyone!

Warm Regards,
QA Team

MassPing-UntouchedBug