Consider a silly data model to store data about cities like
message City {
optional string city_name = 1;
optional string state = 2;
optional int32 population = 3;
optional int32 year_founded = 4;
// ... presumably others :-)
}
and some sample data like:
[
{"city_name": "Portland", "state": "OR", "population": ...},
{"city_name": "Portland", "state": "ME", "population": ...},
{"city_name": "Springfield", "state": "FL", "population": ...},
{"city_name": "Springfield", "state": "IL", "population": ...},
{"city_name": "Springfield", "state": "CO", "population": ...}
]
There are some useful entities we can define: (DRAFT NB: don’t read too much into the matcher vs filter lingo.)