Can someone confirm that I got this part right, or explain how I got it wrong? To put it differently, is there a definition of "(homo)morphism" and "mathematical structure" (or whatever term is preferred), such that if I write down the definition of a mathematical structure that you've never seen defined before, you will be able to use the definition of "homomorphism" to tell me which functions I should call homomorphisms?
By "mathematical structure", I mean of course such things as groups, algebras, topological spaces, fiber bundles and so on, i.e. things that consist of a set or several sets, and a selection of something else associated with the set(s), like some functions, a set of subsets, or whatever.
I imagine that it would be quite difficult to define "structure preserving" in a general way. Consider e.g. fiber bundles. There are several sets involved, and the functions we want to think of as "structure preserving" are maps between the total spaces of two bundles that take fibers to fibers. This choice of what functions to call homomorphisms (actually the book I studied just called them "bundle maps") is pretty natural if we understand the reason why we define fiber bundles the way we do, but it doesn't seem to be forced upon us by the definition of fiber bundle.