In this paper we show how to extend Coloured Petri Nets (CP-nets), with three new modelling primitives-place capacities, test arcs and inhibitor arcs. The new modelling primitives are introduced to improve the possibilities of creating models that are on the one hand compact and comprehensive and on the other hand easy to develop, understand and analyse. A number of different place capacity and inhibitor concepts have been suggested earlier, e.g., integer and multi-set capacities and zero-testing and threshold inhibitors. These concepts can all be described as special cases of the more general place capacity and inhibitor concepts defined in this paper. We give an informal description of the new concepts and show how the concepts can be formally defined and integrated in the Petri net framework-keeping the basic properties of CP-nets. In contrast to a number of the previously suggested extensions to CP-nets the new modelling primitives preserve the concurrency properties of CP-nets. We show how CP-nets with place capacities, test arcs and inhibitor arcs can be transformed into behaviourally equivalent CP-nets without these primitives. From this we conclude that the basic properties of CP-nets are preserved and that the theory developed for CP-nets can be applied to the extended CP-nets. This means that, e.g., the generalisations of analysis methods of CP-nets to cover the new modelling primitives are straightforward.The reader is assumed to be familiar with the notion of CP-nets.