In nature, one observes that a K-theory of an object is defined in two steps. First a structured category is associated to the object. Second, a K-theory machine is applied to the latter category to produce an infinite loop space. We develop a general framework that deals with the first step of this process. The K-theory of an object is defined via a category of locally trivial objects with respect to a pretopology. We study conditions ensuring an exact structure on such categories. We also consider morphisms in K-theory that such contexts naturally provide. We end by defining various K-theories of schemes and morphisms between them.