In this paper we investigate and compare four variants of the double-pushout approach to
graph transformation. As well as the traditional approach with arbitrary matching and
injective right-hand morphisms, we consider three variations by employing injective
matching and/or arbitrary right-hand morphisms in rules. We show that injective matching
provides additional expressiveness in two respects: for generating graph languages by
grammars without non-terminals and for computing graph functions by convergent graph
transformation systems. Then we clarify for each of the three variations whether the
well-known commutativity, parallelism and concurrency theorems are still valid and – where
this is not the case – give modified results. In particular, for the most general approach with
injective matching and arbitrary right-hand morphisms, we establish sequential and parallel
commutativity by appropriately strengthening sequential and parallel independence.