...
- Get a machine readable version of the openEHR model specifications in UML/XMI-format
- Alternative A: Until the link on the UML Models main page http://www.openehr.org/releases/1.0.1/architecture/computable/UML/uml.htmlto a (non-existing) zip (http://www.openehr.org/releases/architecture/computable/UML/MagicDraw/openehr.xml.zip) is fixed you'll need to get the MagicDraw-optimized version from the SVN repository at http://www.openehr.org/svn/specification/TRUNK/architecture/computable/UML/MagicDraw/openehr.xml.zip The UML Models main page above states that "An XMI 1.0 file output from the tool is also available" but no details are given where to find it, so you'll need to either install Magic Draw and export such a file or trust that the converted file attached to this wiki page is correct (coming soon...)
- The current openEHR computable UML model was converted from UML 1.x to 2.x upon import in community version 15.1 of MagicDraw (on startup enable "expert" mode in order to see all menu items used for export later). The errors & warnings generated on import mostly concerned a (possibly unintentionally left behind) function "isRoot" that anyway seems to have been removed from the openEHR specification. The layout of some diagrams was manually modified a bit but the underlying class model was hopefully left intact.
- The MagicDraw project was exported as EMF UML2 (v2.x) XMI.The errors & warnings generated on export are listed here.
...
The option to export "Rich XMI" was turned on and the file suffix was manually changed from xml to uml in order to fit Eclipe EMF import better. The resulting file openehr1_0_1-rich-xmi.uml is attached to this page <-- not possible to import
- Alternative B: Generate UML "backwards" from the openEHR XML Schemas found and described at http://www.openehr.org/releases/1.0.1/its/XML-schema/index.html(or download latest from TRUNK in the SVN repository http://www.openehr.org/svn/specification/TRUNK/ITS/XML-schema/) This XSD->UML transformation can be done for example using the Eclipse plugin hyperModel from http://www.xmlmodeling.com/ (The latest version of hyperModel requires Eclipse 3.4) Since the XSD models do not contain the full openEHR models you'll then need to manually edit the models.
- Alternative C: Enter the models manually...
- Alternative D: Reverse-engineer a Java openEHR implementation using e.g. Topcased as described in the presentation (open-office format) at http://lists.gforge.enseeiht.fr/pipermail/topcased-users/attachments/20081020/c7af17ea/attachment-0001.odpdocman/view.php/7/279/TPC_2.1_Java_Reverse_tutorial.pdf from the discussion thread http://lists.gforge.enseeiht.fr/pipermail/topcased-users/2008-October/002507.html
- Alternative A: Until the link on the UML Models main page http://www.openehr.org/releases/1.0.1/architecture/computable/UML/uml.htmlto a (non-existing) zip (http://www.openehr.org/releases/architecture/computable/UML/MagicDraw/openehr.xml.zip) is fixed you'll need to get the MagicDraw-optimized version from the SVN repository at http://www.openehr.org/svn/specification/TRUNK/architecture/computable/UML/MagicDraw/openehr.xml.zip The UML Models main page above states that "An XMI 1.0 file output from the tool is also available" but no details are given where to find it, so you'll need to either install Magic Draw and export such a file or trust that the converted file attached to this wiki page is correct (coming soon...)
- Open the UML file in an EMF-enabled Eclipse setup.
- Inspect and edit the model if needed. If errors or differences in semantics compared to the PDF-specifications are found, then supply feedback to openEHR (TODO: Add link to JIRA-enry for "computable" spec?) Any EMF-based editing plugin for Eclipse should work. The errors and TODO-items found are listed at the end of this page.
- In the first test Topcased was used
- Eclipse update site: http://topcased-mm.gforge.enseeiht.fr/release/update-site3.3/ (As of this writing there seems to be a dependency problem, uncheck the unsatisfied admin component to get the installation going)
- Topcased cookbok: http://gforge.enseeiht.fr/docman/view.php/7/2224/TOPCASED_cookbook_1.2_gb.pdf
- TODO: Add alternative editors...
- In the first test Topcased was used
- Use, modify or create new (usually template driven) output mechanisms to create code and documentation. There are several ways to go from EMF to Code (see discussion)
- JET is built in, this and other approaches are described on http://www.eclipse.org/modeling/m2t (m2t=model to text)
- For this initial test Acceleo, http://www.acceleo.org/, was used.
...