The Model-Driven Architecture (MDA) allows for the deployment of software applications on a variety of different platforms. The MDA models software in a platform-independent model (PIM) that is transformed to a platform-specific model (PSM), given a platform model (PM). Currently, models are transformed directly from PIM to PSM, without using a platform model. The model transformations implicitly assume a platform model. This makes it much easier to write model transformations, since one only has to deal with the limited scope of targeting a single, assumed platform. It is unclear, however, whether a model transformation can be used for other platforms. The only safe assumption is that each targeted platform requires its own corresponding set of model transformations.
We propose a separate platform model, which can be used to automatically select and configure a number of reusable model transformations for a given platform. This platform model is expressed in OWL-DL. Platform constraints can be defined for each model transformation. This way, the model transformations can be reused over a well-defined class of platforms. Concrete platforms are modelled separately and refer to the same platform vocabulary model. An automatic DL reasoner can be used to verify whether a concrete platform satisfies the platform constraints of a model transformation. In addition, it can determine which platform constraint is most platform-specific.