- From: Felix Sasaki <fsasaki@w3.org>
- Date: Sat, 14 Jun 2008 01:29:21 +0900
- To: Yves Savourel <yves@opentag.com>
- CC: public-i18n-its-ig@w3.org
Hi Yves, all Yves Savourel さんは書きました: > Hi Felix, > > >> Currently it seems you are separating global rules processing from >> everything else, e.g. in "Additional Notes" you are discussing a >> flag for inheritance. I'm wondering if it wouldn't be better to have >> a method ("applyDataCategory") which subsumes all the processing >> (see comment above). After all you have to implement inheritance >> and defaults anyway, no matter if you do only global / only local / >> both. >> > > I guess, one of the reason I started by just applying the rules (global and local) but not doing anything about default and > inheritance is because in the scenarios I'm always seeing this can be done as you travers the document. > ah, OK, I did not recognize that you are doing it while traversing the document. Sorry, my bad, now I understand. > Not doing it in the apply() method allows to walk the tree once instead of twice (once for setting the inheritance, and once for > doing whatever you have to do). > that's clearly an advantage. In my implementation I did not have such a flag, so I'm walking the tree actually four times: for global, local, inheritance, defaults. Pretty expensive actually ... and obviously applying global rules + one traversal including inheritance / defaults + whatever you do are enough. > But, I agree, there maybe cases where someone need to access the tree randomly and therefore each node needs to be pre-set with all > the ITS information. That's why I was thinking of a flag in the apply() method: letting the caller to choose whether the inheritence > must be set or not. > > Another thought: one may do some change in the ITS locale rules after apply() and need to re-compute the locale rules and > inheritence from a specific node down. If he does not change global rules there is no need to re-apply them. > True as well. Felix
Received on Friday, 13 June 2008 23:54:28 UTC