]> git.openstreetmap.org Git - nominatim.git/blobdiff - settings/icu_tokenizer.yaml
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / settings / icu_tokenizer.yaml
index 41760c49e0fbd2122d2f1e7fd1966fc4278d1975..bf51f56344e12ae4e6986d8fc60683fa77a8d002 100644 (file)
@@ -7,7 +7,7 @@ normalization:
     - "'nº' > 'no'"
     - "ª > a"
     - "º > o"
     - "'nº' > 'no'"
     - "ª > a"
     - "º > o"
-    - "[[:Punctuation:][:Symbol:]]  > ' '"
+    - "[[:Punctuation:][:Symbol:]\u02bc]  > ' '"
     - "ß > 'ss'" # German szet is unimbigiously equal to double ss
     - "[^[:Letter:] [:Number:] [:Space:]] >"
     - "[:Lm:] >"
     - "ß > 'ss'" # German szet is unimbigiously equal to double ss
     - "[^[:Letter:] [:Number:] [:Space:]] >"
     - "[:Lm:] >"
@@ -21,12 +21,17 @@ transliteration:
     - !include icu-rules/extended-unicode-to-asccii.yaml
     - ":: Ascii ()"
     - ":: NFD ()"
     - !include icu-rules/extended-unicode-to-asccii.yaml
     - ":: Ascii ()"
     - ":: NFD ()"
-    - "[^[:Ascii:]] >"
     - ":: lower ()"
     - ":: lower ()"
+    - "[^a-z0-9[:Space:]] >"
     - ":: NFC ()"
 sanitizers:
     - step: split-name-list
     - step: strip-brace-terms
     - ":: NFC ()"
 sanitizers:
     - step: split-name-list
     - step: strip-brace-terms
+    - step: clean-housenumbers
+      filter-kind:
+        - housenumber
+        - conscriptionnumber
+        - streetnumber
     - step: tag-analyzer-by-language
       filter-kind: [".*name.*"]
       whitelist: [bg,ca,cs,da,de,el,en,es,et,eu,fi,fr,gl,hu,it,ja,mg,ms,nl,no,pl,pt,ro,ru,sk,sl,sv,tr,uk,vi]
     - step: tag-analyzer-by-language
       filter-kind: [".*name.*"]
       whitelist: [bg,ca,cs,da,de,el,en,es,et,eu,fi,fr,gl,hu,it,ja,mg,ms,nl,no,pl,pt,ro,ru,sk,sl,sv,tr,uk,vi]
@@ -59,6 +64,13 @@ token-analysis:
       mode: variant-only
       variants:
           - !include icu-rules/variants-de.yaml
       mode: variant-only
       variants:
           - !include icu-rules/variants-de.yaml
+      mutations:
+          - pattern: ä
+            replacements: ["ä", "ae"]
+          - pattern: ö
+            replacements: ["ö", "oe"]
+          - pattern: ü
+            replacements: ["ü", "ue"]
     - id: el
       analyzer: generic
       mode: variant-only
     - id: el
       analyzer: generic
       mode: variant-only