Executable UML allows precisely describing the softtem at a higher level of abstraction. It bridges the semantics gap between the UML design models and the implementation. The executable models can be translated to a less abstract programming language completely or executed in a virtual machine directly. Existing executable UMLs lack a formal and standardized Action Semantics Language (ASL). Object Constraint Language (OCL), as a formal specification language, is a standard published by Object Management Group (OMG) along with UML. It is used to describe constraints for UML models. In this paper, we propose an executable UML with OCL-based ASL (OxUML) by extending OCL to support actions with side effects. We present its support environment—UML Virtual Machine (UVM) and suggest a Model-Driven Development (MDD) process with OxUML. We also introduce an example to demonstrate how to build and process OxUML models.