1 #ifndef GAZETTEERS_H
2 #define GAZETTEERS_H
3 
4 
5 
6 
7 #include <stdio.h>
8 #include <stdlib.h>
9 #include <stdint.h>
10 
11 #include "klib/kvec.h"
12 #include "libpostal.h"
13 #include "vector.h"
14 
15 typedef enum dictionary_type {
16     DICTIONARY_ANY = 1,
17     DICTIONARY_SYNONYM = 2,
18     DICTIONARY_STOPWORD = 3,
19     DICTIONARY_ELISION = 4,
20     DICTIONARY_AMBIGUOUS_EXPANSION = 5,
21 
22     DICTIONARY_STREET_NAME = 10,
23     DICTIONARY_STREET_TYPE = 11,
24     DICTIONARY_CONCATENATED_PREFIX_SEPARABLE = 12,
25     DICTIONARY_CONCATENATED_SUFFIX_SEPARABLE = 13,
26     DICTIONARY_CONCATENATED_SUFFIX_INSEPARABLE = 14,
27     DICTIONARY_DIRECTIONAL = 15,
28     DICTIONARY_QUALIFIER = 16,
29     DICTIONARY_BUILDING_TYPE = 17,
30     DICTIONARY_LEVEL_NUMBERED = 18,
31     DICTIONARY_LEVEL_STANDALONE = 19,
32     DICTIONARY_LEVEL_MEZZANINE = 20,
33     DICTIONARY_LEVEL_BASEMENT = 21,
34     DICTIONARY_LEVEL_SUB_BASEMENT = 22,
35     DICTIONARY_UNIT_NUMBERED = 23,
36     DICTIONARY_UNIT_STANDALONE = 24,
37     DICTIONARY_UNIT_DIRECTION = 25,
38     DICTIONARY_ENTRANCE = 26,
39     DICTIONARY_STAIRCASE = 27,
40 
41     DICTIONARY_NUMBER = 30,
42     DICTIONARY_NO_NUMBER = 31,
43     DICTIONARY_HOUSE_NUMBER = 32,
44     DICTIONARY_POST_OFFICE = 33,
45     DICTIONARY_POSTCODE = 34,
46 
47     DICTIONARY_PLACE_NAME = 50,
48     DICTIONARY_COMPANY_TYPE = 51,
49     DICTIONARY_GIVEN_NAME = 52,
50     DICTIONARY_SURNAME = 53,
51     DICTIONARY_PERSONAL_TITLE = 54,
52     DICTIONARY_PERSONAL_SUFFIX = 55,
53     DICTIONARY_ACADEMIC_DEGREE = 56,
54 
55     DICTIONARY_NAMED_PERSON = 60,
56     DICTIONARY_NAMED_ORGANIZATION = 61,
57 
58     DICTIONARY_CATEGORY = 70,
59     DICTIONARY_CHAIN = 71,
60     DICTIONARY_NEAR = 72,
61 
62     DICTIONARY_CROSS_STREET = 80,
63 
64     DICTIONARY_NULL = 90,
65 
66     DICTIONARY_TOPONYM = 100,
67     DICTIONARY_POSTAL_CODE = 101,
68 
69 } dictionary_type_t;
70 
71 typedef struct gazetteer {
72     dictionary_type_t type;
73     uint16_t address_components;
74 } gazetteer_t;
75 
76 
77 
78 
79 #endif
80 
81