TRANSFORMING UML-ACTIVITY DIAGRAMS INTO IMS-
LEARNING DESIGN MANIFESTS USING XMI AND XSL
José R. Hilera, Luis De-Marcos, José M. Gutiérrez, S. Otón, Roberto Barchino,
Eva García, José A. Gutiérrez, José J. Martínez, Antonio García
Department of Computer Science, University of Alcalá, Alcalá de Henares (Madrid) - Spain
ABSTRACT
This paper presents XSL source code to automatically produce a Unit of Learning manifest with a standard IMS-LD
format, from the activity diagram with UML format that represents its workflow. Besides, a complementary XSL source
code that performs the reverse process, namely to automatically obtain the activity diagram from the unit of learning
manifest, is presented; so re-engineering of learning processes is also facilitated.
KEYWORDS
Learning design, IMS-LD, UML, Activity diagram, XMI, XSLT.
1. DESCRIPTION
The process for transforming models outlined in figure 1 has been implemented. An UML (OMG, 2009)
modeling tool is used to create an activity diagram of the course that is going to be designed; and then the
diagram is exported to a XMI (OMG, 2007) file, generating a course.xmi file. Next, a XSLT (W3C, 1999)
transformation engine parses the code specified in the file UMLtoLD.xsl (excerpt in table 1 left), generating
the imsmanifest.xml file of the unit of work. This later file is then integrated in the package generated by the
IMS-LD (IMS, 2003) editor (course.zip) when the designing process of the unit of work has concluded.
Reverse transformation is similar. In this case the transformation sheet LDtoUML.xsl, which is
complementary to the previous one, is employed (excerpt in table 1 right).
Figure 1. Transforming UML and IMS-LD models
As it can be observed in table 1 left, the code loops through the input UML document locating those that
represent activities (“uml:CallOperationAction” in this simple code, but it can be extended checking other
possible labels representing simple activities or actions, as “uml:CallBehaviorAction” or, in general,
“uml:ActivityNode”), generating the corresponding activities of the IMS-LD document in the required output
format. Then activity structures (<activity-structure> nodes) that represent the concatenation of activities,
using sequences or alternative paths, are generated. Due to space restrictions the complete source code cannot
be included but it is accessible at www.cc.uah.es/hilera/sw/uml_ld.zip. In the complementary transformation
(table 1 right), activity-structures are located in the input file and a new UML “CallOperationAction” node is
ISBN: 978-972-8939-38-0 © 2011 IADIS
422