I would like to know whether anybody has succeeded in reverse engineering the Drupal core (and or any contributed modules) into XMI, so that I can perform UML analysis modelling of the Drupal system (in full awareness that the nature of untyped/type-hinted PHP does not permit all XMI/UML engineering features).
The best I have achieved so far was with PEAR UML_PHP:
http://pear.php.net/package/PHP_UML
I was able to get some OO parts recognised in the XMI except for all of those functions/methods not within classes - namely most of the current Drupal system - using the following:
phpuml /Library/WebServer/Documents/drupal-7.23/ -n drupal-7.23 -o drupal-7.23-phpuml-php-inc-module.xmi -m *.php *.inc *.module
However, the -f htmlnew format recognises all of the non-encapsulated hook and theme functions in the htmlnew documentation format thus:
phpuml /Library/WebServer/Documents/drupal-7.23/ -f htmlnew -o .
I do not know why the system can generate documentation for the hooks but fails to include them in the XMI (or better said, I don't know why the system doesn't have a pragmatic catch-all pseudo class for non encapsulated functions so that they can live as pseudo-methods within XMI).