]> git.openstreetmap.org Git - nominatim.git/blobdiff - settings/icu_tokenizer.yaml
postcodes: introduce a default pattern for countries without postcodes
[nominatim.git] / settings / icu_tokenizer.yaml
index bf51f56344e12ae4e6986d8fc60683fa77a8d002..f682bbcdf8ad4c38a4e891e55f5360e70a7a28d0 100644 (file)
@@ -8,8 +8,8 @@ normalization:
     - "ª > a"
     - "º > o"
     - "[[:Punctuation:][:Symbol:]\u02bc]  > ' '"
     - "ª > a"
     - "º > o"
     - "[[:Punctuation:][:Symbol:]\u02bc]  > ' '"
-    - "ß > 'ss'" # German szet is unimbigiously equal to double ss
-    - "[^[:Letter:] [:Number:] [:Space:]] >"
+    - "ß > 'ss'" # German szet is unambiguously equal to double ss
+    - "[^[:alnum:] [:Canonical_Combining_Class=Virama:] [:Space:]] >"
     - "[:Lm:] >"
     - ":: [[:Number:]] Latin ()"
     - ":: [[:Number:]] Ascii ();"
     - "[:Lm:] >"
     - ":: [[:Number:]] Latin ()"
     - ":: [[:Number:]] Ascii ();"
@@ -25,13 +25,18 @@ transliteration:
     - "[^a-z0-9[:Space:]] >"
     - ":: NFC ()"
 sanitizers:
     - "[^a-z0-9[:Space:]] >"
     - ":: NFC ()"
 sanitizers:
-    - step: split-name-list
-    - step: strip-brace-terms
     - step: clean-housenumbers
       filter-kind:
         - housenumber
         - conscriptionnumber
         - streetnumber
     - step: clean-housenumbers
       filter-kind:
         - housenumber
         - conscriptionnumber
         - streetnumber
+      convert-to-name:
+        - (\A|.*,)[^\d,]{3,}(,.*|\Z)
+    - step: clean-postcodes
+      convert-to-address: yes
+      default-pattern: [A-Z0-9- ]{3,12}
+    - step: split-name-list
+    - step: strip-brace-terms
     - 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]
@@ -39,6 +44,8 @@ sanitizers:
       mode: append
 token-analysis:
     - analyzer: generic
       mode: append
 token-analysis:
     - analyzer: generic
+    - id: "@housenumber"
+      analyzer: housenumbers
     - id: bg
       analyzer: generic
       mode: variant-only
     - id: bg
       analyzer: generic
       mode: variant-only