From eafafab95928fbcb545b5d80ad696ce07a50ba1e Mon Sep 17 00:00:00 2001 From: Al Date: Wed, 21 Dec 2016 00:35:39 -0500 Subject: [PATCH] =?UTF-8?q?[addresses]=20adding=20function=20to=20generate?= =?UTF-8?q?=20phrases=20for=20addr:conscriptionnumber=20in=20OSM,=20e.g.?= =?UTF-8?q?=20=C4=8D.p.=20123=20in=20the=20Czech=20Republic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/addresses/cs.yaml | 12 ++++++++++++ resources/addresses/de.yaml | 11 +++++++++++ resources/addresses/sk.yaml | 12 ++++++++++++ .../geodata/addresses/conscription_numbers.py | 19 +++++++++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 scripts/geodata/addresses/conscription_numbers.py diff --git a/resources/addresses/cs.yaml b/resources/addresses/cs.yaml index 57907ceb..12729e1b 100644 --- a/resources/addresses/cs.yaml +++ b/resources/addresses/cs.yaml @@ -49,6 +49,18 @@ and: sample: true sample_probability: 0.05 +conscription_numbers: + alphanumeric: + default: + canonical: číslo popisné + abbreviated: "č.p." + canonical_probability: 0.05 + abbreviated_probability: 0.85 + sample: true + sample_probability: 0.1 + numeric: + direction: left + cross_streets: and: *a at: &na diff --git a/resources/addresses/de.yaml b/resources/addresses/de.yaml index 9814d2d5..40078b51 100644 --- a/resources/addresses/de.yaml +++ b/resources/addresses/de.yaml @@ -68,6 +68,17 @@ house_numbers: alphanumeric_phrase_probability: 0.0001 +conscription_numbers: + alphanumeric: + default: + canonical: konskriptionsnummer + abbreviated: konskr. nr + canonical_probability: 0.15 + abbreviated_probability: 0.65 + sample: true + sample_probability: 0.2 + numeric: + direction: left and: default: &und diff --git a/resources/addresses/sk.yaml b/resources/addresses/sk.yaml index 27187f20..5fab09ba 100644 --- a/resources/addresses/sk.yaml +++ b/resources/addresses/sk.yaml @@ -50,6 +50,18 @@ and: sample: true sample_probability: 0.05 +conscription_numbers: + alphanumeric: + default: + canonical: súpisné číslo + abbreviated: s.č. + canonical_probability: 0.05 + abbreviated_probability: 0.85 + sample: true + sample_probability: 0.1 + numeric: + direction: left + cross_streets: and: *a at: &na diff --git a/scripts/geodata/addresses/conscription_numbers.py b/scripts/geodata/addresses/conscription_numbers.py new file mode 100644 index 00000000..0e6e3732 --- /dev/null +++ b/scripts/geodata/addresses/conscription_numbers.py @@ -0,0 +1,19 @@ +import random + +from geodata.addresses.config import address_config +from geodata.addresses.numbering import NumberedComponent +from geodata.encoding import safe_decode + + +class ConscriptionNumber(NumberedComponent): + @classmethod + def phrase(cls, number, language, country=None): + if number is None: + return number + + key = 'conscription_numbers.alphanumeric' + dictionaries = ['house_numbers'] + default = safe_decode(number) + + return cls.numeric_phrase(key, safe_decode(number), language, + dictionaries=dictionaries, country=country)