****************************************
*                                      *
*          PEAR Package PHP_UML        *
*                                      *
*            Softwares to use          *
*              with PHP_UML            *
*              (march 2008)            *
*                                      *
****************************************
       
         
MOF/UML/XMI are complex standards, and their versions 1 and 2 are quite different.
Depending on the UML software you are going to use along with PHP_UML,
some aspects of your XMI could be interpreted differently, or even ignored.

Notice : most of the time, class diagrams are not automatically generated with modeling programs.
You will have to drag and drop your classes (from the class tree view) into a blank class diagram.


- ArgoUML
http://argouml.tigris.org/
OPEN SOURCE
UML version   : 1.4
Appreciation  : A flexible and intuitive soft, but you might possibly get indisposed by its look and feel. Poor performance with big projects.
Compatibility : Imports correctly all the views. But the relations between classes and artifacts are not available.


- Bouml :
http://bouml.free.fr/
OPEN SOURCE
UML version   : 2.1
Appreciation  : Very good layout, good performance.
Compatibility : Only UML version 2.1. Imports everything correctly. The relations between classes and artifacts are available.


- Eclipse (Ecore / Papyrus)
OPEN SOURCE
http://www.papyrusuml.org/
UML version   : 2.1
Appreciation  : not the fastest, cannot export diagrams or generate code without other plug-ins... but available as an Eclipse plug-in!
Compatibility : Papyrus works with a particular flavour of XMI 2 (ecore) but you should be able to import the XMI code generated by PHP_UML by doing the following:
1. Create a blank model in Papyrus
2. Save it
3. Papyrus created two files on the disk : one with the extension .di2 (the one to open later in Papyrus), and one with the extension .uml (containing the UML definitions, required by xxx.di2)
3. Copy the XMI you have generated with PHP_UML WITHOUT the enclosing "uml:Model", and paste it into your file xxx.uml, INTO its own "uml:Model"
4. Open xxx.di2
5. You should now see your UML elements in the tree view


- Umbrello
http://uml.sourceforge.net/index.php
OPEN SOURCE
UML version   : 1.4
Appreciation  : a tool for Linux (KDE). Quite colorful.
Compatibility : you MUST disable the filename inclusion : $t->$tagFilename = false;


- Protégé (ontology editor)
http://protege.stanford.edu/
UML version   : 1.3
OPEN SOURCE


- Rational Rose
http://www-306.ibm.com/software/awdtools/developer/rose/index.html
PROPRIETARY
UML version   : 1.4
Appreciation  : THE reference
Compatibility : no artefacts in classe packages.
Logical and component view : ok.
The deployment view is not correctly imported (at least, in the version of Rose I used to test the feature).


- Poseidon
http://www.gentleware.com/products.html
PROPRIETARY
Untested


If you know other good tools, please let me know.