I would like to use
register_taxonomy() to define a hierarchy of geographical terms. It seems that the natural place to place it would be in a function called by
register_activation_hook() seeing how the taxonomy needs only to be defined once. However, the fine manual explicitly states to "use the init action to call this function".
Why? Is the data not stored in the database but rather in memory? If so, might such taxonomies become memory hogs? I cannot anticipate where the end user might use the taxonomies to target anything more precise than init.