INNER CODE UNIT · Python
build_terms
Zverik/every_door · tools/json_to_sqlite.py:335
def build_terms(data):
"""Here we just build initial terms from the preset name."""
for name, row in data.items():
if skip_preset(name, row):
continue
for term in name.replace('_', '/').split('/')[1:]:
if term:
yield 'tag', term, name, 5
# Formerly we also added tag values, which seemed logical
# (e.g. "fuel" for "amenity=fuel"). But that led to additional like 2 MB of data
# and was of less use, since translations are mostly better for this.
cur.execute(
"create table preset_terms (lang text, term text, preset_name text, score integer);")
cur.executemany(
"insert into preset_terms (lang, term, preset_name, score) values (?, ?, ?, ?)",
build_terms(data))
# We build index later, after parsing translations