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

CLDR Ticket #8820(accepted tools)

Opened 2 years ago

Last modified 22 months ago

Optimize attribute and element comparators in DtdData

Reported by: mark Owned by: mark
Component: perf Data Locale:
Phase: rc Review:
Weeks: Data Xpath:
Xref:

Description

As a holdover from the old days, each DTD has a single unified attribute comparator and a single unified element comparator.

Those are made by merging all the elements/attributes for the whole dtd.

We could instead have each Element contain

  • a comparator for its attributes and
  • a comparator for its child elements

That would be:

  1. faster to build
  2. allow for different elements to have ordering among attributes. We've long wanted that for readability, as in the example below.
  3. automatically validate if someone tried to set the wrong attributes on an XPathParts element

example:

<type type="account" key="cf">Accounting Currency Format</type>
<type type="arab" key="numbers">Arabic-Indic Digits</type>
<type type="arabext" key="numbers">Extended Arabic-Indic Digits</type>
<type type="arabext" key="numbers" alt="short">X Arabic-Indic Digits</type>

should be:

<type key="cf" type="account">Accounting Currency Format</type>
<type key="numbers" type="arab">Arabic-Indic Digits</type>
<type key="numbers" type="arabext">Extended Arabic-Indic Digits</type>
<type key="numbers" type="arabext" alt="short">X Arabic-Indic Digits</type>

Attachments

Change History

comment:1 Changed 2 years ago by emmons

  • Status changed from new to accepted
  • Component changed from unknown to perf
  • Priority changed from assess to medium
  • Phase changed from dsub to rc
  • Milestone changed from UNSCH to 29
  • Owner changed from anybody to mark
  • Type changed from unknown to tools

comment:2 Changed 22 months ago by emmons

  • Milestone changed from 29 to upcoming
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.