Installation
ArchGenXML
Preconditions
- You will need a working Python interpreter, version 2.4+.
- You will need Plone 2 installed (choose the latest stable release) and its dependencies to see your generated code in action. Plone 3 is supported by the subversion-trunk.
- We also recommend to upgrade Archetypes to the latest stable release, preferrably latest 1.4.x, 1.5.x or later.
Download
You need to download the release tarball of ArchGenXML from plone.org's products section. Choose the most recent version or use the bleeding edge development version - best choice with latest Plone Versions - from the Subversion repository. The trunk is planned to be always stable, because developement is done on branches.
Installation
Simply un-tar the downloaded file to a directory of your choice and remember the path to ArchGenXML.py. You do not have to put it in Zope's Products directory!
If you are running on a unix-like operating system, we suggest you give the file execution permissions and make a symbolic link at a place mentioned in your PATH environment variable (/usr/local/bin for example). That way, you can execute ArchGenXML simply with the command ArchGenXML.py (or whatever the name of the synmlink is).
Note: The installation will be handled by dist-utils in one of the next releases, which should make it a lot easier. :-)
Additional software
To get all the features of ArchGenXML, you may need some of the following.
For code generation:
- i18ndude
- Without this, the generation of translatable user interface strings is disabled. Download and install i18ndude.
- Stripogram
- Some UML tools produce HTML in the documentation elements in XMI. Stripogram converts them into plain text. Without having Stripogram installed this feature is disabled. Download and install stripogram from the squishdot project on sourceforge.net.
For running the generated code (optional)
- ATVocabularyManager
- Enables usage of custom dynamic vocabularies. Download and install the product
- Relations
- enables complex references. Download and install the product
- CompoundField
- enables usage of multiplicity on fields an definition of fields as a compund of other fields. Download and install the product
UML Tools
ArchGenXML processes models stored in XMI. This XML format isn't intended to be written in a plain text editor nor in a tree based XML editor, so you will almost certainly use a UML design tool. Below is a more or less complete list of such tools. If you know about any others tools missing from this list, have more detailed information or have experience with a tool in combination with ArchGenXML, please write the author a short e-mail.
- ArgoUML
- Website and download: argouml.tigris.org
Read Using ArgoUML with ArchGenXML.
- Free software
- Written in Java
- Runs on most platforms
- Stores the model natively as XMI + diagram information in .zuml files (zip files)
- No
undo(planned for future) - Some known, but non-critical bugs
- Poseidon (by Gentleware)
- Website and download: www.gentleware.com,
- Commercial software - Community Editionfor low-cost license available, supports XMI version 1.2
- Written in Java, runs on most platforms
- Based on ArgoUML
- Stores the model natively as XMI + diagram information in .zuml files (zip files)
- Is very slow and needs lots of memory and a fast CPU
- ObjectDomain
- Website and download: objectdomain.com
- Commercial, free time-limited demo for <= 30 classes
- Written in Java
- Runs on most platforms
- Needs to export model from its native .odm format
- Powerdesigner (by Sybase)
- Website and download: sybase.com
- XMI version 1.1
- Needs to export model
- Umbrello (KDE)
- Website and download: uml.sourceforge.net
- Free software
- Runs under Linux/KDE
- Stores the model natively as XMI
- At the time of testing (somewhere in the first half of 2004), Umbrello wasn't complete and the XMI not 100% standards compliant. Umbrello promises to support XMI correctly on version 1.4, which will be shipped with KDE 3.4. (please report your experience).
An almost complete list of UML tools can be found at www.jeckle.de/umltools.htm.
archgenxml on Mac OS - problem
Therefore I created the file .agx_zope_path in my home directory, containing the path to python, but when I try to run ArchGenXML.py I get:
...
NameError: name 'set' is not defined
Has anyone succeeded in using ArchGenXML on a Mac?
xml.minidom
This may save somebody hours of work:
Use Python version 2.4.1 or later, or you will get this confusing error message:
ImportError: No module named ArchetypesGenerator
The reason is that the module xml.minidom is needed, which is not part of older Python versions.