[Unicode]   Common Locale Data Repository : Bug Tracking Home | Site Map | Search
 
Modify

CLDR Ticket #8462(accepted tools)

Opened 2 years ago

Last modified 7 months ago

Add sideways inheritance for "alt" values

Reported by: mark Owned by: mark
Component: survey Data Locale:
Phase: dsub Review:
Weeks: Data Xpath:
Xref:

Description

Go to http://st.unicode.org/smoketest/v#/en_GB/C_SEEurope/6e2485fa6713dccc

You don't see a narrow currency symbol. We should see a narrow symbol always, and it should inherit from the normal symbol.

To do this, I think we'd need to alter XMLSource to:

  • add the alt="narrow" form to code fallback.
  • add sideways inheritance for "alt" values.

The second one we should do anyway. That is, if <path> + [@alt="XXX"] doesn't have a value, return the value for <path>.

Attachments

Change History

comment:1 Changed 2 years ago by mark

  • Status changed from new to accepted
  • Component changed from unknown to survey
  • Priority changed from assess to critical
  • Milestone changed from UNSCH to 28
  • Owner changed from anybody to mark
  • Type changed from unknown to tools

comment:2 Changed 2 years ago by mark

  • Milestone changed from 28 to 29

comment:3 Changed 2 years ago by mark

  • Summary changed from Narrow currency not showing in Survey Tool to Add sideways inheritance for "alt" values

I think the first part may have been taken care of by other bugs, so changing title to reflect the second.

comment:4 Changed 2 years ago by emmons

  • Milestone changed from 29 to upcoming

Automatic move of all 29 -> upcoming

comment:5 Changed 7 months ago by mark

The code that needs changing to do alt inheritance is

XMLSource.ResolvingSource, Alias, and AliasLocation

That uses aliases that are discovered in the inheritance change (that now always come from root). The code for alt would effectively act the same as the aliases do, but would just done in code for any 'alt' value, rather than requiring that an alias be found. It should thus behave like a 'count' value. But if there is both a count and an alt, we want to first try without an alt, then try without a count.

The tricky part about the aliases is not the inheritance lookup of a value, it is gathering all the possible paths for iteration. That is, when we iterate though a file, we want to pick up all the paths that could result from inheritance. (Ask me if you have questions.)

For the counts, we know for any language what the count values are, and can thus synthesize the right paths. We'd want to do the same for alt values, to be able to know all of the paths. Look at CldrFile.getRawExtraPathsPrivate to see how it is done with 'count'. To do this, we should have a list of all the paths that can take alt values. That should be data driven, but shouldn't change very often. That is, we would only change it in response to a ticket to add a new path to the list of those that take alts, and would only do that at the start of a release.

View

Add a comment

Modify Ticket

Action
as accepted
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.