Research in Aspect-Oriented Software Development (AOSD) has brought up powerful abstractions in order to specify under which conditions an aspect affects the base software. So far, Model-Driven Development (MDD) approaches to AOSD have mostly concentrated on the weaving process and, as a result, they have come up with manifold ways to compose aspect models and base models. All too often, however, the approaches disregard the benefits that the aspect-oriented abstractions can bring to software development, though. This paper discusses the implications that such negligence has on the specification of aspect-oriented models in MDD. Furthermore, it presents a weaver that is able to cope with sophisticated join point selection abstractions, as they are known from many aspect-oriented programming languages, and which go far beyond the selection capabilities provided by current model weavers. By means of this weaver, models can realize both a higher separation of concerns as well as a higher level of abstraction.