The lack of a formal semantics for UML-RT makes it inadequate for rigourous system development, especially if the preservation of behaviour is a major concern when applying well-known model transformations, like refactorings and refinements. In this paper, we propose a semantics for UML-RT active classes through a mapping into Circus, a specification language that combines CSP, Z and specification statements. As a consequence of the translation, we are able to prove that model transformations preserve both static and dynamic behaviour, using refinement laws and a relational semantics of Circus, based on the Unifying Theories of Programming.