@@ -129,6 +129,26 @@ calculation from geometric types. See
129129[ here] ( https://www.geomesa.org/documentation/user/spark/sparksql_functions.html )
130130for a list of functions that operate on geometries.
131131
132+ #### A Note on Geocoding ####
133+
134+ VectorPipe provides the means to tag geometries with the country codes of the
135+ countries they interact with, but it does not provide the boundaries used to
136+ do the coding. That gives the user the option to select geometries
137+ appropriate to the task at hand—low resolution geometries for less fussy
138+ applications, high resolution when precision is important.
139+
140+ In order for an application to make use of ` vectorpipe.util.Geocode ` , it must
141+ supply a ` countries.geojson ` in in the root of its project's ` resources `
142+ directory. That GeoJSON file must contain a ` FeatureCollection ` , with each
143+ entry having an ` ADM0_A3 ` entry in its ` properties ` list.
144+
145+ One may employ the [ Natural Earth Admin
146+ 0] ( https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-boundary-lines/ )
147+ resource for low-precision tasks, or use something like the [ Global LSIB
148+ Polygons] ( http://geonode.state.gov/layers/geonode%3AGlobal_LSIB_Polygons_Detailed )
149+ for more precise tasks (though the latter resource does not tag its elements
150+ with the ` ADM0_A3 ` three-letter codes, so some preprocessing would be required).
151+
132152## The ` internal ` package ##
133153
134154While most users will rely solely on the features exposed by the ` OSM ` object,
0 commit comments