****************************************
*                                      *
*          PEAR Package PHP_UML        *
*                                      *
*          Logiciels  utiliser        *
*              avec PHP_UML            *
*              (mars 2008)             *
*                                      *
****************************************
       
         
MOF/UML/XMI sont des standards complexes, ses versions 1 et 2 sont trs diffrentes, et l'intrprtation du XMI ne sera donc peut-tre pas la mme selon le logiciel que vous utiliserez pour importer le code XMI produit par PHP_UML.
Il vous faudra peut-tre dsactiver certaines options de parsing pour que l'importation fonctionne correctement.

- ArgoUML
http://argouml.tigris.org/
OPEN SOURCE
Version UML   : 1
Note : L'un des plus souples, mais il faut aimer le design...
Compatibilit : A l'heure actuelle, n'accepte que la version 1 d'UML.
Importe bien les artefacts dans les packages de classe, le systme de fichiers en composants dans une vue de composants.



- Bouml :
http://bouml.free.fr/
OPEN SOURCE
Version UML   : 2.1
Note : Excellente qualit du graphisme, bonnes performances.
Compatibilit : N'importe que la version 2 de XMI. On trouvera les artefacts dans une vue de dploiement, le nom du fichier en commentaire de classe, et l'ensemble des fichiers visits dans une vue de composant.
Mais bug dans Bouml actuellement (pas de composition des sous-systmes).


- Umbrello
http://uml.sourceforge.net/index.php
OPEN SOURCE
Version UML   : 1
Note : un outil pour Linux (KDE).
Compatibilit : il faut dsactiver l'inclusion du tag filename : $t->$tagFilename = false;
(Umbrello n'aime pas les tagged values)


- Eclipse / Papyrus
http://www.papyrusuml.org/
OPEN SOURCE
Version UML   : 2.1
Note : pas le plus rapide, ne peut pas exporter des diagrammes ni gnrer du code sans d'autres plugins... mais c'est un plug-in Eclipse !
Compatibilit : Papyrus fonctionne avec une version particulire de XMI2 (ecore), mais il est nanmoins possible d'importer le XMI produit par PHP_UML de la manire suivante :
1. Crez un modle vierge dans Papyrus
2. Sauvergardez-le
3. Papyrus a cr deux fichiers sur le disque : l'un portant l'extension .di2 (celui  ouvrir ensuite dans Papyrus), et l'autre avec l'extension .uml (contenant les dfinitions UML, requises par xxx.di2)
3. Copiez le code XMI que vous avez gnr avec PHP_UML SANS l'lement racine "uml:Model", et copiez le dans votre fichier file xxx.uml,  l'intrieur de son propre tag "uml:Model"
4. Ouvrez xxx.di2
5. Vous devriez voir vos lements UML dans votre arbre d'objets UML
Attention : Papyrus est assez dlicat avec les rfrences non-rsolues (qui se produisent si vous parsez du PHP contenant des classes/interfaces qui ne sont pas dfinies, ou qu'ils le sont de faon interne, commme Iterator or DomDocument...)


- Protg (diteur d'ontologies)
http://protege.stanford.edu/
Version UML   : 1
OPEN SOURCE
Comme avec Papyrus, l'importation ne fonctionnera que si TOUTES les rfrences sont correctes.
Exemple d'erreur : une classe A (fournie) drivant d'une classe B (non fournie).


- Posdon
http://www.gentleware.com/products.html
PROPRIETARY
Non test.


- Rational Rose
http://www-306.ibm.com/software/awdtools/developer/rose/index.html
PROPRIETARY
Note : LA rfrence UML.
Compatibilit : pas d'artefacts dans les packages de classe.
La tagged value "src_path" avec le nom du fichier PHP d'origine est correctement ajoute aux classes/interfaces.
Importe correctement le systme de fichiers dans une vue de composants/sous-systmes.
