Hello out there, I've just pu a new alpha release on the Web-Server. It's available at http://www.iti.informatik.tu-darmstadt.de/xindy/alpha/ This release adds the capability of defining rule sets as discussed some days ago. The command (define-rule-set "name" [ :inherit-from ("rule-set" "rule-set-2") ] :rules (<rule>...) ) where each of the rules defined as follows: <rule> ::= ("pattern" "replacement" [:string|:bregexp|:egegexp] [:again]) It is similiar to a SORT-RULE command. A rule must not include the :run parameter (this is supplied at instantiation time) and the identifier SORT-RULE, since this scheme does only work for sort rules, so we can omit it. As an example : (define-rule-set "isolatin1-tolower" :inherit-from ("latin-tolower") :rules (("À" "à" :string :again) ("Á" "á" :string :again) ("Â" "â" :string :again) ("Ã" "ã" :string :again) ("Ä" "ä" :string :again) ("Å" "å" :string :again) ("Æ" "æ" :string :again) ... ) ...) Rule sets inherit rules from another rule set, if they do not have the same pattern already. A list of parents is inherited successively, one by one, preserving the order. Thus, in the resulting list of patterns the ones that have been inherited the last appear at the end of the list. At instantiation time we use (use-rule-set :run <phase> :rule-set (<rule-set>...) ) such as (use-rule-set :run 0 :rule-set ("din5007" "isolatin1-tolower")) (use-rule-set :run 1 :rule-set ("resolve-umlauts" "resolve-sharp-s" "isolatin1-tolower" )) In the test phase I've implemented a full scheme for German, which is now part of the library. Have a look at the modules http://www.iti.informatik.tu-darmstadt.de/xindy/modules/ lang/german/rules.xdy din5007m.xdy rules/isolatin1-tolower.xdy latin-tolower.xdy Which contains the complete rule sets and their instantiation. The rule sets from rules/* may be valuable for the specification of a complete rule set for French or other languages. The changes implemented in the program affected the binary kits as well. Any comments are welcome. Cheers, --Roger -- ====================================================================== Roger Kehr kehr@iti.informatik.tu-darmstadt.de Computer Science Department Darmstadt University of Technology